20180111211433
easyui有个可编辑下拉框,官网demo是只给了一个html的代码它是直接从url里获取json数据

产品编号 产品 市场价 成本价 描述 状态

但是在这里我们在这里使用不行,没法直接获取通过路径直接从后台获取(ps:此处我也不知为什么从后台获取的json,还需要eval下然后加载..)
然后我就想用在定义每行数据是用js写,然后一开始预加载先将下拉框数据加载进来,然后编辑是直接设置加载进来的数据。
html

得到初始化数据

var tdeptna;
	var tpostna;
	var tdegreena;
	$.ajaxSetup({async:false}); 
	//初始化时动态加载教研室列表
	$.getJSON("../SyscodeServlet?mode=getcodeByno&&codeno=jxdw",null,function call(data){   
       	if(data.errmsg!=""){
       		alert(data.errmsg);
       		return;
       	}
       	var tdept=eval(data.result);
       	
       
       	tdeptna=tdept;
       	
       	$("#tdeptid").combobox('loadData', tdept);//直接加载数据
       	
     });
	//加载职称
	$.getJSON("../SyscodeServlet?mode=getcodeByno&&codeno=zhch",null,function call(data){   
       	if(data.errmsg!=""){
       		alert(data.errmsg);
       		return;
       	}
       	var zhch=eval(data.result);
       	tpostna=zhch
       	
     });
	//加载学位
	$.getJSON("../SyscodeServlet?mode=getcodeByno&&codeno=xw",null,function call(data){   
       	if(data.errmsg!=""){
       		alert(data.errmsg);
       		return;
       	}
       	var xw=eval(data.result);
       	tdegreena=xw;
     });
	initTable(tdeptna,tpostna,tdegreena);

定义可编辑表单

function initTable(tdept,tpost,tdegree){
	$('#teachertb').datagrid({
		columns:[[
		          {title:'教职工编号',field:'tid',width:85},
		          {title:'姓名',field:'tname',width:80},
		          {
		        	  title:'教研室',
		        	  field:'tdeptname',
		        	  width:200,
		        	  formatter:function(value,row){
                          return row.tdeptname;
                      },
                      editor:{
                          type:'combobox',
                          options:{
                              valueField:'codeid',
                              textField:'codecontent',
                          
                              data:tdept,
                              required:true
                          }
                      }   
		          },
		          {
		        	  title:'职称',
		        	  field:'tpostname',
		        	  width:100,
		        	  formatter:function(value,row){
                          return row.tpostname;
                      },
                      editor:{
                          type:'combobox',
                          options:{
                              valueField:'codeid',
                              textField:'codecontent',
                          		heigh:100,
                              data:tpost,
                              required:true
                          }
                      }         
		          },
		          {
		        	  title:'学位',
		        	  field:'tdegreename',
		        	  width:100,
		        	  formatter:function(value,row){
                          return row.tdegreename;
                      },
                      editor:{
                          type:'combobox',
                          options:{
                              valueField:'codeid',
                              textField:'codecontent',
                          
                              data:tdegree,
                              required:true
                          }
                      }
		          }
		          ]]
	})
}

结束

标签: none

评论已关闭