flexigrid 添加checkbox
发布时间:2020-12-15 04:43:37 所属栏目:百科 来源:网络整理
导读:先来一张图,看看添加了checkbox的界面是怎么样的? flexigrid本质上用的是html的table元素,添加checkbox实际上就是每个tr里面添加一个td,td里面有一个div,div里面包含了input type=checkbox 这样的标记。 在JavaScript添加很简单: 首先我定义了一个config
先来一张图,看看添加了checkbox的界面是怎么样的? flexigrid本质上用的是html的table元素,添加checkbox实际上就是每个tr里面添加一个td,td里面有一个div,div里面包含了input type=checkbox 这样的标记。 在JavaScript添加很简单: 首先我定义了一个config函数,创建了三个列: config : function (description) { 'use strict'; $("#powers").flexigrid( { dataType: 'json',width: 281,height: 320,singleSelect: true,colModel : [ {display: '',name: 'select',width: 15,sortable: true,align: 'left'},{display: '权限',name: 'power',width: 50,{display: description,name: 'description',width: 178,] } ); }, #powers对应的是table的id: powers。 下面的两个函数为flexigrid准备数据: buildPowerRow: function (power,checked) { 'use strict'; var t1,t2; t1 = "{"cell":["<input id='{0}' class='checkbox_class' type='checkbox' value='{0}'/>","{1}","{2}"]}" t2 = "{"cell":["<input id='{0}' class='checkbox_class' type='checkbox' checked="checked" value='{0}'/>","{2}"]}"; if (checked) { return jQuery.validator.format(t2,power.name,power.zhName,power.zhDes); } else { return jQuery.validator.format(t1,power.zhDes); } },buildDefaultPowerRows: function (powers) { 'use strict'; var length,value; length = powers.length; value = "{"page": 1,"total": 40,"rows":["; for (i = 0; i < length; (i += 1)) { str = accounts.buildPowerRow(powers[i].value,false); value += str; if (i !== (length - 1)) { value += ","; } } value += "]}"; return jQuery.parseJSON(value); }, buildDefaultPowerRows接收一个json格式的对象,然后创建flexigrid所需要的格式头,从{"page"开始。 中间每一行的值都通过buildPowerRow函数生成。 buildPowerRow函数用了两个字符串模板,用于生成打勾或者不打勾的字符串。 代码并不难,关键是要知道怎么将input 标记添加进flexigrid,同样的方法,我们可以将select也加入进来。以后介绍。 原始的json数据下面有个例子: allPowers : { "powers": [ { "index":"0","value": { "name": "message","zhName": "发送信息","zhDes": "发送信息到Business Signs" } },{ "index":"1","value": { "name": "log","zhName": "信息日志","zhDes": "查看发送信息的日志" } },{ "index":"2","value": { "name": "group","zhName": "分组管理","zhDes": "分组管理" } },{ "index":"3","value": { "name": "config","zhName": "装置配置","zhDes": "装置配置" } },{ "index":"4","value": { "name": "account","zhName": "账户管理","zhDes": "创建新账户并分配权限" } },{ "index":"5","value": { "name": "title","zhName": "标题信息","zhDes": "标题信息" } } ] }, (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |