给下一个之后的select移除option但是同时添加data数据,为什么数据被清除了???

给下一个之后的select移除option但是同时添加data数据,为什么数据被清除了???

$.fn.UiCascading = function(){

var ui = $(this);

var selects = $('select',ui);


selects

.on('change',function(){

var val = $(this).val();

var index = selects.index(this);


// 触发下一个 select 的更新,根据当前的值

var where = $(this).attr('data-where');

where = where ? where.split(',') : [];

where.push( $(this).val() );


selects.eq(index+1)

.attr('data-where',where.join(','))

.triggerHandler('reloadOptions');

// 触发下一个之后的 select  的初始化(清除不应该的数据项)

ui.find('select:gt('+ (index+1) +')').each(function(){

$(this)

.attr('data-where','')

.triggerHandler('reloadOptions');

})


})

.on('reloadOptions',function(){

var method = $(this).attr('data-search');

var args = $(this).attr('data-where').split(',');

var data = AjaxRemoteGetData[ method ].apply( this, args );

var select = $(this);

select.find('option').remove();

$.each( data , function(i,item){

var el = $('<option value="'+item+'">'+item+'</option>');

select.append(el);

});

});


selects.eq(0).triggerHandler('reloadOptions');

}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
正在想名字呢 2018-05-04 18:20:56

http://img1.sycdn.imooc.com//climg/5aec3382000136af05000082.jpg

是为了清空下面的文字内容,你可以听一下4分钟42秒以后的地方

http://img1.sycdn.imooc.com//climg/5aec338c0001b03303020267.jpg

关于你说的“为什么触发下一个之后的 select  的初始化(清除不应该的数据项),中的.triggerHandler('reloadOptions'); 同样是给下一个之后的select移除option但是同时添加data数据,为什么数据被清除了???”表示没看懂,你可以再详细的描述一下哈~


提问者 前端001 2018-05-04 10:40:30

.attr('data-where','')      data-where本来就是空为什么还要设置为空???


提问者 前端001 2018-05-04 10:38:45

为什么触发下一个之后的 select  的初始化(清除不应该的数据项),中的.triggerHandler('reloadOptions'); 

同样是给下一个之后的select移除option但是同时添加data数据,为什么数据被清除了???


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师