问题描述
比如我现在获取了一个字符串 这个字符串是某表的名字,我使用了dwr方法 如何通过这个表名字符串来动态设置dwrFun的值,还有显示出来的列名又如何改变呢,这是我现在的代码var gridSetting={url : 'http://127.0.0.1:8080/WebConnector/data.jsp',height:'auto',width:'auto',datatype : "json",//dwrFun : OperatorService.findMapByProperty,dwrCountFun :OperatorService.findCountByProperty,condition : "",searchCondition : '',selectCondition : '',needLink : true,dwr : true,autowidth:true,colNames : [ 'ID', '姓名', '部门编号'],colModel : [ {key:true,name : 'operatorCode',index : 'operatorCode'}, {name : 'operatorName',index : 'operatorName'}, {name : 'organization',index : 'organization',sortable : false}],rowNum : 10,rowList : [ 10, 20, 30 ],pager : '#operatorPager',viewrecords : true,rownumbers : false,jsonReader : {root : "rows",page : "page",total : "total",records : "records", // 总记录数repeatitems : false// 设置成false,在后台设置值的时候,可以乱序。且并非每个值都得设},multiselect:true,multiboxonly:true};然后这个方法是实现dwrfun的动态改变if(tablename="Operator")//tablename是传入的表名参数 { jQuery('#operatorTable').setGridParam({dwrFun:OperatorService.findMapByProperty}) } else if(tablename="Article") { jQuery('#operatorTable').setGridParam({dwrFun:ArticleService.findMapByProperty}) }grid显示列名又如何动态改变呢 问题补充:就此改变 写道
解决方案
var aaa = 你的dwrFun的值var bbb = 你的列名$("#YourListID").setGridParam({dwrFun:aaa, colNames : [ 'ID', '姓名', bbb]}).trigger("reloadGrid");
解决方案二:
我用的是 easyui datagrid ,我的显示页面是很多表通用的,因为表的信息是动态的,包括表名,列名,信息等。主要实现过程是datagrid 有一个columns属性 从后台得到json串给他 列名就有了,url后面的地址就是信息记录来源。不知道对你有没有帮助