easyui datagrid 动态生成列和行数据以超链接的形式展示问题

项目中需要用到datagrid控件,列是根据数据库检索的具体字段动态生成,每一行数据(都是数字)是以超链接的形式展示,当用户点击这个超链接后要把这个单元格的数据返回到后台... 项目中需要用到datagrid控件,列是根据数据库检索的具体字段动态生成,每一行数据(都是数字)是以超链接的形式展示,当用户点击这个超链接后要把这个单元格的数据返回到后台处理,如果这个单元格的数据到一定的数量后要禁用这个超链接不让用户点击,请问高手们怎样解决啊,最要有实例,我是初学者,请高手们指点呀 展开
 我来答
liujycong
2013-04-17 · TA获得超过168个赞
知道小有建树答主
回答量:142
采纳率:0%
帮助的人:115万
展开全部
动态产生列的代码,其实就是按datagrid所需列的json格式,拼凑成字符串还可以实现列合并
//用字符串产生grid所需的列
function AddColspanGridColumn(fieldName, title, width, align, rowStyle, formatterStyle,colspan) {
var columnStr = "";
//Easyui的datagrid列的基本格式
columnStr = "{field: '" + fieldName + "', title: '" + title + "', width: " + width;
//对齐方式
if (align != "" && align != null && align != undefined)
columnStr += ",align:'" + align + "'";
//是否合并列
if (colspan != 0 && colspan != "" && colspan != null && colspan != undefined)
columnStr += ",colspan:" + colspan;
//是否需要行样式
if (rowStyle != "" && rowStyle != null && rowStyle != undefined)
columnStr += ",styler: function (val, row, index) {return '" + rowStyle + "';}";
if (formatterStyle != "" && formatterStyle != null && formatterStyle != undefined)
columnStr += ",formatter: function (val, row, index) {" +
"if (val == '' || val == undefined) val = '0';" +
"return \"<span style='" + formatterStyle + "'>\"+val+\"</span>\";}";
columnStr += "}";
return columnStr;
}
然后把产生的json字符串给datagrid,
var options = $("#" + gridName).datagrid("options");

var columnstr =
AddColspanGridColumn("AVG_PRICE", "户均价", 80, "left",
"background-color:#F6B03E;",
"font-size:14px;font-weight:bold;",
0)

options.columns = eval(columnstr);

设置列内容为超链接,参考函数里的formatter,设置列的内容的
更多追问追答
追问

我生成的成上面那个形式了,表头可以拖动,可是下面的内容只有日期那一列对照,其他都不对照,页不能拖动,请问怎么回事啊?

追答
这是你产生的标题的json格式和返回的列表数据的json格式,字段名称对不上吧,还有你动态产生列的方法是怎么写的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式