成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Asp.net Ajax控件之AutoComplete控件幾點淺析

開發(fā) 后端
Asp.net Ajax控件之AutoComplete控件幾點淺析向你介紹了在Asp.net Ajax控件中的AutoComplete控件的幾點修改和增強。

Asp.net Ajax 1.0控件中的AjaxControlToolkit系列控件的發(fā)布給開發(fā)人員帶來了很多便利,但其中很多控件似乎并沒有我們想像的那么***。最近對這里面的AutoComplete控件用得較多,發(fā)現(xiàn)了它的幾個不足或錯誤之處:

1.在某些情況下會出現(xiàn)“two components with the same id”的錯誤;

2.容易導(dǎo)致在IE中出現(xiàn)“無法打開Internet站點,…,已終止操作”的問題;

3.即使用戶輸入了很多的字符,即使已經(jīng)沒有相匹配的結(jié)果,它仍然會調(diào)用服務(wù)端方法,試圖獲取相匹配的值,白白增加了服務(wù)器的負擔(dān);

4.自動完成列表的樣式不太好看;

5.服務(wù)端方法的簽名必須是:string[] GetCompletionList(string prefixText, int count),無法從客戶端取得其它需要的數(shù)據(jù)。這一點在一個頁面中有多個需要從不同數(shù)據(jù)源獲取數(shù)據(jù)的AutoComplete控件時尤其致命。

要解決這些問題,首先需要知道怎樣來修改相應(yīng)的代碼并使之在自己的應(yīng)用中生效。值得慶幸的是,Asp.net Ajax控件中AjaxControlToolkit系列控件是開源的,所以我們可以根據(jù)自己的需要來盡情修改。用VS2005打開AjaxControlToolkit解決方案,打開AutoComplete文件夾中的AutoCompleteBehavior.js文件,修改并重新編譯后,將生成的AjaxControlToolkit.dll文件更新到自己的項目引用中,即可應(yīng)用我們優(yōu)化和增強后的Asp.net Ajax控件之AutoComplete控件了。

那么,在Asp.net Ajax控件中具體需要修改哪些代碼呢?

針對***個問題,需要在AjaxControlToolkit.AutoCompleteBehavior.callBaseMethod(this, 'dispose');這一行之前加上:

  1. if (this._popupBehavior) {  
  2.     this._popupBehavior.dispose();  
  3.     this._popupBehavior = null;  

第二個問題,要將

  1. document.body.appendChild(this._completionListElement); 

這一行修改為

  1. element.parentNode.appendChild(this._completionListElement); 

第三個問題,需要在_onTimerTick方法中,為

  1. if (text.trim().length < this._minimumPrefixLength) 

這個判斷增加一個條件,變成:

  1. if (text.trim().length < this._minimumPrefixLength || text.trim().length > 10)  

,這就使得,當用戶的輸入超過10個字符時,就不必向服務(wù)端調(diào)用讀取匹配值的方法了。

第四個問題,要調(diào)整自動完成列表的樣式,可以直接修改initializeCompletionList方法中的以下代碼:

  1. completionListStyle.backgroundColor = this._textBackground;  
  2. completionListStyle.color = this._textColor;  
  3. completionListStyle.border = 'solid 1px buttonshadow';  
  4. completionListStyle.cursor = 'default';  
  5. completionListStyle.unselectable = 'unselectable';  
  6. completionListStyle.overflow = 'hidden'

,或者刪除這幾行,并添加:element.className = "completionList";然后在頁面上添加樣式類“completionList”的定義即可;

要解決***一個問題,應(yīng)該在

  1. { prefixText : this._currentPrefix, count: this._completionSetCount} 

這一行中增加一個發(fā)給服務(wù)器的參數(shù),變?yōu)?

  1. { prefixText : this._currentPrefix, count: this._completionSetCount , srcId: this.get_element().getAttribute("srcid") } 

從而,服務(wù)端的讀取自動完成列表項的方法簽名就可以寫成:

  1. string[] GetCompletionList(string prefixText, int count ,string srcId) 

這意味著,我們可以為需要應(yīng)用自動完成功能的文本框預(yù)先設(shè)置一個用于標識其數(shù)據(jù)來源的標識字符串,C#代碼如:tb.Attributes.Add("srcid", "xxx"); 然后,在GetCompletionList方法中就可以根據(jù)客戶端傳過來的這個參數(shù)值來有針對性地讀取數(shù)據(jù)了。

Asp.net Ajax控件之AutoComplete控件的一些變化就向你介紹到這里,希望對你認識Asp.net Ajax控件有所幫助。

【編輯推薦】

  1. ASP.NET筆試題之簡單問答
  2. PHP與ASP.NET比較的淺析
  3. ASP.NET JSP PHP之間的取舍
  4. PHP ASP.NET的較量
  5. ASP.NET AJAX組成部分的淺析
責(zé)任編輯:仲衡 來源: 百度空間
相關(guān)推薦

2009-01-08 10:20:56

AutoCompletAjaxASP.NET

2009-07-27 17:25:53

ASP.NET驗證控件

2009-07-29 13:50:26

UpdatePanelASP.NET

2009-08-07 14:05:21

ASP.NET控件

2009-08-06 15:21:45

ASP.NET控件開發(fā)RenderConte

2009-08-07 17:41:07

ASP.NET Web

2009-08-07 15:24:16

ASP.NET模板控件

2009-08-07 17:49:44

控件設(shè)計器

2009-08-06 09:18:01

ASP.NET自定義控ASP.NET控件開發(fā)

2009-07-20 13:54:31

ScriptManagASP.NET AJA

2009-07-21 17:18:26

UpdateProgrASP.NET AJA

2009-08-06 18:18:27

ASP.NET控件開發(fā)ASP.NET復(fù)合控件

2009-08-05 17:11:51

ASP.NET控件開發(fā)ASP.NET服務(wù)器控

2009-08-05 18:46:21

ComboBox顯示ASP.NET控件開發(fā)

2009-07-24 13:41:15

ASP.NET AJA

2009-07-24 09:57:25

ASP.NET HTM

2009-08-07 16:32:52

ASP.NET控件設(shè)計時支

2009-08-07 17:59:35

控件設(shè)計器

2009-08-07 15:34:15

ASP.NET數(shù)據(jù)綁定

2009-08-04 15:20:59

ASP.NET數(shù)據(jù)驗證數(shù)據(jù)驗證控件
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 亚洲视频第一页 | 黄色网址在线免费播放 | a免费观看| 国产精品久久 | 亚洲专区在线 | 成人av播放 | 91精品国产日韩91久久久久久 | 国产成人免费在线 | 在线观看成人小视频 | 国产一区二区在线视频 | 粉嫩av在线 | 亚洲精品久久久久中文字幕欢迎你 | 国内自拍真实伦在线观看 | 亚洲欧美中文日韩在线v日本 | 国产一区二区三区在线看 | 91天堂 | 视频一区二区中文字幕日韩 | 日韩av成人 | 4h影视 | www.狠狠干 | 91精品国产综合久久久久久丝袜 | 亚洲国产精品久久久久秋霞不卡 | 中文字幕av网站 | 久久成人精品一区二区三区 | 午夜免费视频 | 日韩一级免费大片 | 成年人网站在线观看视频 | 久久久久国产精品 | 美女二区| 久久男人 | 亚洲aⅴ精品 | 亚洲视频一区在线观看 | 一级黄色影片在线观看 | 天天精品在线 | 午夜爽爽爽男女免费观看影院 | 成人国产精品免费观看视频 | 中文字幕一区二区三区精彩视频 | 国产999精品久久久久久绿帽 | 国产成人久久久 | 免费av播放 | 免费日本视频 |