Fastadmin增加selectpicker获取远程数据的功能

在<select>元素里面加一个class="selectpicker",这样就可以使得select兼容手机端了。

而我目前要实现的效果是加一个class="selectpickernew",此外,再增加dataurl属性,就可以实现从远程获取数据。

具体代码如下:把下面的代码加入require-form.js里面即可。

selectpickernew: function (form) {
      //绑定select元素事件
      if ($(".selectpickernew", form).size() > 0) {
            require(['bootstrap-select', 'bootstrap-select-lang'], function () {
         $.each($('.selectpickernew', form),function(i){
            var sobj = $(this);
           if(typeof($(this).attr('dataurl'))!='undefined'){
                            $.ajax({
                                type:'POST',
                                url:$(this).attr('dataurl'),
                                dataType:'json',
                                async:false,
                                success:function(data){
                                    var str = '';
                                    str += '<option value="0">请选择</option>';
                                    $.each(eval(data), function (k, v) {
                                        str += '<option value="' + v.itemid + '">' + v.name + '</option>';
                                    });
                                    sobj.html(str);
                                },
                                error: function () {
                                    alert('编辑失败');
                                },
                                complete: function () {
                                }
                            });
                          }
                        });
                        $('.selectpickernew', form).selectpicker();
                    });
                }
            },

猜你喜欢

转载自blog.csdn.net/u010261924/article/details/79625690