❶ easyui datagrid列设置checkbox,并能获取选中的值如图
在 easyui datagrid 中设置列为 checkbox 并能获取选中的值,可以按照以下步骤进行操作:
1、在 columns 配置中设置需要显示 checkbox 的列,示例代码如下:
columns:[[
{field:'id',title:'ID',width:80},
{field:'name',title:'Name',width:100},
{field:'gender',title:'Gender',width:100},
{field:'checkbox',title:'',checkbox:true},
]],
在这个示例中,第 4 列设置了 checkbox。
2、在 easyui datagrid 的 toolbar 中添加按钮,并绑定事件,示例代码如下:
toolbar:[{
text:'Get Selected',
iconCls:'icon-search',
handler:function(){
var rows = $('#dg').datagrid('getSelections');
alert(rows.length+' rows are selected.');
}
}]
在这个示例中,添加了一个名为 "Get Selected" 的按钮,点击按钮会获取当前选中的行,并弹出提示框显示选中的行数。
3、在点击按钮时获取选中旁庆念的行,示例代码如下:
var rows = $('#dg').datagrid('getSelections');
在这个示例中,使用 easyui datagrid 的 getSelections 方法获取选运困中的行数据。
4、在获取选中的行后,可以对这些行进行后续的操作,例如对每行进行遍历,获取某一列的值,示例代码如下:
for(var i=0; i<rows.length; i++){
var row = rows[i];
console.log(row.id); // 获取 id 列的值
}
在这个示例中,差猜使用 for 循环遍历选中的行数据,然后使用 row.id 获取 id 列的值。
以上就是在 easyui datagrid 中设置列为 checkbox 并能获取选中的值的操作步骤。
❷ EasyUi Datagrid中footer修改行样式的问题。
默认的'rowStyler' 选项不支持footer,想让footer支持rowStyler的话,dategird就得重写。代码如下。
varmyview=$.extend({},$.fn.datagrid.defaults.view,{
renderFooter:function(target,container,frozen){
varopts=$.data(target,'datagrid').options;
varrows=$.data(target,'datagrid').footer||[];
varfields=$(target).datagrid('getColumnFields',frozen);
vartable=['<tableclass="datagrid-ftable"cellspacing="0"cellpadding="0"border="0"><tbody>'];
for(vari=0;i<rows.length;i++){
varstyleValue=opts.rowStyler?opts.rowStyler.call(target,i,rows[i]):'';
varstyle=styleValue?'style="'+styleValue+'"':'';
table.push('<trclass="datagrid-row"datagrid-row-index="'+i+'"'+style+'>');
table.push(this.renderRow.call(this,target,fields,frozen,i,rows[i]));
table.push('</tr>');
}
table.push('</tbody></table>');
$(container).html(table.join(''));
}
});
$('#list').datagrid({
view:myview
});
<tableid="list"class="easyui-datagrid"title="投资情况统计表"style="width:960;"fixRowHeight="true"
data-options="rownumbers:false,singleSelect:true,url:'<%=webRoot%>/hqswq/report/tzqkInfo.do?nf=<%=nf%>',method:'get',showFooter:true,rowStyler:function(index,row){
if(row.fg=='总计'){
return'background-color:#6293BB;color:#fff;font-weight:bold;';
}
}">
这是效果