jquery easyui datagrid使用(二)——带有内部checkbox的datagrid
2016-10-21 13:52
387 查看
jquery easyui datagrid使用(二)——带有内部checkbox的datagrid
一般说道带有checkbox,都是全选之类的,但是这次遇到的是这样的,后端给过来的数据是这样{memo=查询,编辑, dutyid=003001, power=11, MENUID=0703, MENUNAME=目录1}这里面的权限明显是power代表的权限码,然后需要在datagrid中展现出每个都是checkbox 的样子。
这时候,需要用到的就是datagrid的Column属性中的formatter了。下面是代码:
//初始化权限表 $('#powertb').datagrid({ nowrap: false, striped: true, collapsible: true, singleSelect: true, fitColumns: true, rownumbers: true, columns: [[ { field: 'MENUID', title: '目录编号', halign: 'center', width: 40 }, { field: 'MENUNAME', title: '目录名称', halign: 'center', width: 60 }, { field: 'memo', title: '权限', halign: 'center', width: 120, formatter: function (value, row, index) { //return '<font color="red">' + value + ' ' +row.power + ' ' + index +'</font>'; var checkboxtext = ''; if (row.memo != null) { var powernames = row.memo.split(','); $(powernames).each(function (index, element) { if (row.power.charAt(index) == '1') { checkboxtext += '<input type="checkbox" name="' + row.MENUID + '" checked="checked" value="' + index + '"/>' + element; } else { checkboxtext += '<input type="checkbox" name="' + row.MENUID + '" value="' + index + '"/>' + element; } }); } return checkboxtext; //return '<input type="checkbox" name="'+ row.MENUID+'" checked="checked"/>' + value; } } ]], data: [], onClickRow: function (index, data) { $('#selectedmenuid').textbox('setValue', data.MENUID); $('#selectedmemoid').textbox('setValue', data.memo); $('#selectedpower').textbox('setValue', data.power); //alert(index); //console.log(data); } });
加载数据:
$('#powertb').datagrid('loadData', data.list); $('#powertb').datagrid('hideColumn', 'MENUID');//隐藏MENUID列
对应界面上比较简单:
<table id="powertb" class="easyui-datagrid" data-options="border:false,fit:true"> </table>
上面这些步骤,基本上显示是没有问题了,现在需要的是知道checkbox是否选中。因为每一行对应的dutyid是相同的,而且界面上每个checkbox的name属性都为当前行的dutyid,所以可以直接取得当前选中状态的数组。
var chk_value =[]; $('input[name="0101"]:checked').each(function(){ chk_value.push($(this).val()); }); console.log(chk_value);
剩下的状态变换和保存,这里就略了。(主要就是数组的操作,有Jquery的话,直接就$(array).each(function(index,element{}))就可以了,这里不再赘述)
相关文章推荐
- DataGrid中使用CheckBox时根据帮定的数据显示不同的效果
- DataGrid中使用CheckBox的CheckedChanged事件
- DataGrid 中使用 复选框(CheckBox) 删除纪录
- 使用Jquery EasyUi常见问题解决方案 刷新 easyui datagrid 数据
- 在dataGrid中使用checkBox和ComboBox
- DataGrid使用 绑定checkbox
- 对带有Checkbox的DataGrid数据删除确认操作
- Silverlight 2.0中关于DataGrid使用CheckBox选择行
- DataGrid 中使用 复选框(CheckBox) 删除纪录
- DataGrid中使用CheckBox的CheckedChanged事件
- DataGrid中使用CheckBox的CheckedChanged事件
- datagrid的几点简单应用,功能包括radio的单选,checkbox的多选,鼠标移动到行上颜色变深,链接传递多参数等功能。这里radio和checkbox都使用的是HTML控件。
- DataGrid和CheckBox的混合使用
- DataGrid 中使用 复选框(CheckBox) 删除纪录
- DataGrid和CheckBox的混合使用
- DataGrid和CheckBox的混合使用
- 如何循环并通过使用 ASP.NET 和 VisualC # .NET 检查 DataGrid 列中 CheckBox 控件值
- ASP.NET DEMO 14: 如何在 GridView/DataGrid 模板列中使用自动回发的 CheckBox/DropDownList
- 在dataGrid中使用checkBox和ComboBox的用法示例
- WPF datagrid 中 DataGridComboBoxColumn 和 DataGridCheckBoxColumn 使用方法