在使用easyui getSelections 与 getSelected中,经常如果不注意这两个的使用,用混的话,如果对这两个属性不了解,找起问题来,都很费事。走过的弯路,做一个记录。
DataGrid组件包括2个方法检索选择行数据:
· getSelected: 得到第一个选择行的数据,如果没有选择行则返回null否则返回该记录
· getSelections:得到全部的选择行的数据,如果元素是记录的话,返回数组数据
创建标记
<table id="tt"></table>
创建 datagrid
$(‘#tt‘).datagrid({ title:‘Load Data‘, iconCls:‘icon-save‘, width:600, height:250, url:‘datagrid_data.json‘, columns:[[ {field:‘itemid‘,title:‘Item ID‘,width:80}, {field:‘productid‘,title:‘Product ID‘,width:80}, {field:‘listprice‘,title:‘List Price‘,width:80,align:‘right‘}, {field:‘unitcost‘,title:‘Unit Cost‘,width:80,align:‘right‘}, {field:‘attr1‘,title:‘Attribute‘,width:100}, {field:‘status‘,title:‘Status‘,width:60} ]] });
用法演示
得到选择行数据:
var row = $(‘#tt‘).datagrid(‘getSelected‘); if (row){ alert(‘Item ID:‘+row.itemid+"\nPrice:"+row.listprice); }
得到全部选择行的itemid:
var ids = []; var rows = $(‘#tt‘).datagrid(‘getSelections‘); for(var i=0; i<rows.length; i++){ ids.push(rows[i].itemid); } alert(ids.join(‘\n‘));
注意:如果你其实应该用var rows = $(‘#tt‘).datagrid(‘getSelections‘);但是误使用的是var row = $(‘#tt‘).datagrid(‘getSelected‘);则取出来的row.length是空值。很郁闷的!
easyui的 getSelections 与 getSelected 对比区别,布布扣,bubuko.com
时间: 2024-10-11 06:21:16