asp.net+jquery滾動捲軸載入資料的下拉控制項

來源:互聯網
上載者:User

這樣的需求貌似自己感覺不是很合理,因為資料多了如此下拉無論從人還是機器操作都比較痛苦。

沒辦法由於需求下來了,只能按需求操作。網上找了很多相關控制項都感覺有點龐大,佔資源比較多。沒辦法自己花半天時間弄出個半成品自訂控制項,拿出來分享下,如有高手看了請多指點。

需求:AJAX滾動捲軸載入資料的下拉式清單
控制項名稱:Webcombo
所用技術:ASP.NET(C#),jQuery,ASP.NET一般處理檔案(.ashx)

下拉式清單具體實現:用DIV類比下拉式清單,input和圖片類比下拉框。最終結果如


先分析下jQuery這邊的外掛程式寫法吧
AJAX載入有jQuery Ajax完成
複製代碼 代碼如下:$.ajax({
type: options.getMethod,
url: options.jsonUrl,
data: params,
success: function(data){
if(isScroll)
$.CreateListItem(showbox,data,options);
else
$.CreateBox(showbox,data,options);
},
complete:function(){ },
error:function(e){
$(options.loadBox).css('background-image','none');
$(options.loadBox).append('<span>data connect error!'+e+'</span>');
}

而捲軸滾動式載入資料則由下拉DIV的onscroll事件完成,具體核心代碼如下:

複製代碼 代碼如下:$(showbox).scroll(function(){
if(options.total==$(this).children("ul").children("li").length)
return;
var scrolltop=$(showbox).attr('scrollTop');
var scrollheight=$(showbox).attr('scrollHeight');
var windowheight=$(showbox).attr('clientHeight');
var scrolloffset=20;
$(options.loadBox).css('top',scrolltop);
if(scrolltop>=(scrollheight-(windowheight+scrolloffset))&&!loading)
{
loading=true;
$(options.loadBox).show();
options.total=$(this).children("ul").children("li").length;
$.WebComboGetData(showbox,options,true);
}
});

該外掛程式的完整代碼再源檔案中可以找到,檔案名稱:simulateddl.js
其實這個捲軸滾動式載入資料的jQuery外掛程式寫好了就已經可以實現該功能了,只是由於項目中用到的地方比較多又無賴的將其封裝到asp.net自訂控制項中。之所以說半成品就是這個自訂控制項自訂的有些不人性化,高手們見瞭望指點指點。具體代碼可以下載後查看,本人不是控制項製作高手,就不搬出來獻醜了。有問題建議的朋友可以提出來大家討論討論。

asp.net+jQuery捲軸滾動式載入資料控制項原始碼下載

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.