老师讲解一下
来源:5-10 首页.UI组件-UiCascading(下)
qq_慕瓜7049344
2020-08-01 19:52:04
.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);me
select.find('option').remove();
$.each( data , function(i,item){
var el = $('<option value="'+item+'">'+item+'</option>');
select.append(el);
});
});
selects.eq(0).triggerHandler('reloadOptions');
}
2回答
好帮手慕言
2020-08-03
同学你好,可以参考下方:
在data.js中给AjaxRemoteGetData对象添加了很多方法:
在html结构中添加在了data-search中
在ui.js中获取了data-search值:
然后通过属性名获取属性值,这里因为将data-search属性值赋值给了method变量,所以通过[]的方法获取属性值,也就是获取相对应的方法再调用。
arg就是获取select的data-where属性值,例如朝阳区。
同学可以结合视频再理解下。祝学习愉快~
好帮手慕言
2020-08-02
同学你好,同学的代码中多了me
整体可以参考下方:
// 绑定自定义reloadOptions事件 .on('reloadOptions', function() { // 获取select的data-search属性值 var method = $(this).attr('data-search'); // 获取select的data-where属性值并使用逗号分隔 var args = $(this).attr('data-where').split(','); // 从通过参数从data.js文件中获取数据 var data = AjaxRemoteGetData[method].apply(this, args); var select = $(this); // 将原有的option移除 select.find('option').remove(); // 将获取的指定数据遍历,和option标签拼接,重新添加到select中 $.each(data, function(i, item) { var el = $('<option value="' + item + '">' + item + '</option>'); select.append(el); }); }); // 默认第一个的select触发更新事件 selects.eq(0).triggerHandler('reloadOptions');
如果我的回答帮到了你,欢迎采纳,祝学习愉快~
相似问题