控件easyui-combobox动态设置默认值

$.ajax({
    url:"${ctx}/carpark-type/combobox.json",
    type:"post",
    datatype:"json",
    success:function(data){
        $('#cc').combobox({ 
            data:data.rows,
            valueField:'id'
            textField:'text',
            onLoadSuccess: function () { //加载完成后,val[0]写死设置选中第一项
                var val = $(this).combobox("getData");
                for (var item in val[0]) {
                    if (item == "id") {
                        $(this).combobox("select", val[0][item]);
                    }
                }
            }
        });        
    }
});
以上为网上查询大家给的建议
=============================================================================================
实际应用中不能默认选中第一项,是动态的,看后台传回来是哪一项就选中哪一项,对上方法稍加改动即可:

$("#selectChnCode_Name").combobox({   
url:'../../../finance/chnAcctInfo/findFinaChanMerchScan',
valueField:'chnCode', 
textField:'chnName',
hasDownArrow:true,
editable:false,
onBeforeLoad : function(param){
var comboxVal = $(this).combobox('getValue');
if(comboxVal){
param.chnName = comboxVal;
return true;
}
} ,
onChange : function(newValue,oldValue){
$("#selectChnCode_").val(newValue);
$("#selectChnCode_Name").val(newValue);
sc_.findChnAcctInfo(newValue);
sc_.findProvinceCode(newValue);
},
onLoadSuccess : function() {  
                         var val = $(this).combobox("getData");
                         var c = $("#selectChnCode_").attr("value");//1.该项在html中为后台传回来动态值,放在隐藏域中。
                         for (var a = 0; a < val.length; a++) {//2.当前下拉框的所有数据。
                        if(c==val[a].chnCode){//3.用后台传回来的实际值与下拉框中的值进行比较,若是二者相等那么默认选中该项。
                        $(this).combobox("select", val[a].chnCode);
                    }
}
   }  
});

如上问题已完美解决。

你可能感兴趣的:(控件easyui-combobox动态设置默认值)