easyui combobox 動態加載數組數據

怕本身忘了,記錄下來之後用方便html

html部分ajax

<input id="rzcode" name="businesItemId"  style="width: 100%; height: 100%;border:none" class="easyui-combobox" data-options=""  />

JS部分json

var arrayData = new Array();//建立空數組
var aryData = new Array();//建立空數組
$(document).ready(function(){
    //先用ajax獲取到下拉框所有的數據,並放到數組一里
    $.ajax({
                async:false,//同步加載
                type:"post",
                url:"${ctx}/basic/businessItem/list/all?campId=${campId}&groupId=${groupId}",
                dataType:"json",
                success: function(data){
                    arrayData = data
                }
            });  
      //combobox操做
             $('#rzcode').combobox({
         //先把所有數據複製 
                valueField: 'id',
                textField: 'name',
                data:arrayData,
         //數據改變時
                onChange:function(newValue,oldValue){
                    if(newValue != ""){
                        for(var i=0;i<arrayData.length;i++){
                            var code = arrayData[i].code;
                            var ss = code.indexOf(newValue);
                //輸入的newValue是否匹配原有數據的code
                            if(ss != -1){
                   //先清空第數組二,再從新放到數組二里
                                aryData = new Array();
                                aryData.push(arrayData[i])
                            }
                        }
              //修改數據
                        $(this).combobox("loadData", aryData);
                    }else{
              //若是輸入空格,依然仍是所有的數據
                        $(this).combobox("loadData", arrayData);
                    }
                    
                },  
});

大致效果數組

輸入空格 或 所有刪除後async

加載所有post

輸入的跟code匹配ui

相關文章
相關標籤/搜索