在多媒体终端列表栏目,重新加载弹出框时,供应商select内容无法显示。供应商函数如下:
function setSupplier(id,paramsor){ var type="supplier"; var params = {"token": getStorage("token"), "flag":1}; var fullurl=getOption("gykj_host")+type+"/list"+"?"+getOption("gykj_callbackparam")+"="+getOption("gykj_callbackfunc")+"&token="+getStorage("token"); $.ajax({ url:fullurl, type:‘get‘, dataType:"jsonp", jsonp:getOption("gykj_callbackparam"), jsonpCallback:getOption("gykj_callbackfunc"), async:false, error:function(){ alert("列表:"+getOption("connectionErrorMessage")); }, success:function(data){ if(data.resultCode==getOption("resultcode_success")){ var html=‘<select class="chosen-select form-control" id="s_id" data-placeholder="选择一个供应商...">‘; for(var item in data.data){ //var machinegroup = {"mg_id": data.data[item].mg_id,"mg_name":data.data[item].mg_name,"description": data.data[item].description,"flag":1}; var supplier_str=JSON.stringify(data.data[item]); html+="<option value=‘"+supplier_str+"‘"; if(data.data[item].s_Id!=null&¶msor[‘supplier‘]!=null&&data.data[item].s_Id==paramsor[‘supplier‘].s_Id){ html+=" selected "; } html+=">"+data.data[item].s_name+"</option>"; } html+="</select>"; $("#suppliers").html(html); $(‘#s_id‘).chosen({allow_single_deselect:true}); }else{ alert("错误代码"+data.errorCode+":"+data.message); //$("#machinegrouptype").html(""); } } }); }
解决:
1.把 $(‘#s_id‘).chosen({allow_single_deselect:true}); 这句代码去掉,就能正常显示。
2.查看有没有多余的<option value=""></option>空选择项。
时间: 2024-10-31 01:08:56