easyui中datagrid的方法getselections只获取到一条数据
使用easyui获取表格选中数据时,要进行批量操作,使用getSelections,但是在实际操作中只对选中的其中一条数据进行了操作,反复测试,console.log打印出来的也是只有一条数据,检查代码后发现是因为idField属性值写错,修改之后就能获取到多行数据
1 $("#dgGoods").datagrid({ 2 toolbar: 'toolbars', 3 fitColumns: false, 4 idField: 'ID', //标识字段 5 loadMsg: '数据加载中,请稍后...', 6 rownumbers: true, 7 singleSelect: false, 8 height: $(window).height() - 96, 9 pagination: true, 10 checkOnSelect: true, 11 selectOnCheck:true, 12 pagePosition: 'bottom', 13 pageNumber: 1, 14 pageSize: 15, 15 pageList: [15, 20, 25, 30, 50, 1000], 16 columns: [[ 17 { field: 'ck', title: '', checkbox: true, width: 80, align: 'center' }, 18 { field: 'ID', title: 'id', width: 180, align: 'center' } 19 ]] 20 });
获取选中数据的方法有:getSelected、getSelections、getChecked三种
1、getSelected:返回第一个选中的行或者 null。
2、getSelections:返回所有选中的行,当没有选中的记录时,将返回空数组。
3、getChecked:取得checkbox选择行的数据,返回元素记录的数组数据。
getSelected跟getSelections是选中行,而且getChecked是选择行。在使用时,有时会出现已经选中或选择了数据,但是操作时仍会提示“请先选中要操作的数据”,可能是出现了没有写checkbox选择框,却使用了getChecked方法去获取数据,这时候就要将checkOnSelect和selectOnCheck都设置为true。
checkOnSelect:如果设置为 true,当用户点击某一行时,则会选中/取消选中复选框。如果设置为 false 时,只有当用户点击了复选框时,才会选中/取消选中复选框
selectOnCheck:如果设置为 true,点击复选框将会选中该行。如果设置为 false,选中该行将不会选中复选框。以上两个属性自版本 1.3 起可用