easyui datagrid没有ID情况下,easyui datagrid 删除行信息方法
Posted dumb-dog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了easyui datagrid没有ID情况下,easyui datagrid 删除行信息方法相关的知识,希望对你有一定的参考价值。
在datagrid中直接将index传给easyui自带的deletRow方法来删除当前点击行,一开始并没有问题,但是当连续删除的时候就或出问题了。
原因是datagrid行是根据datagrid-row-index和datagrid-row-r1-x-x来定位行的,如果一开始就将该行的index作为参数传给deleteRow方法,每行的index是固定了的,其他行的index并不会随着删除某一行而改变掉。所以在连续删除中,可能会出现,当删除了一行以后,点击了第二行的删除按钮,删除的确实第三行这种情况。
最近我也是找了一些解决办法,但都稍有复杂,唯有这个解决办法最近单,和大家一起分享:
html:
<table id="dg" class="easyui-datagrid" title=""></table>
JS:
1 $(function()
2 $(‘#dg‘).datagrid().datagrid(‘enableCellEditing‘);//首行复选框
3
4 $(‘#dg‘).datagrid(
5 rownumbers: true,
6 multipleSelect:true,
7 collapsible: false,
8 pagination: true,
9 url: ‘datagrid/dg.json‘,
10 method: ‘get‘,
11 columns: [
12 [
13 field: ‘ck‘,
14 checkbox: true
15 ,
16 field: ‘name‘,
17 title: ‘姓名‘
18 ,
19 field: ‘tel‘,
20 title: ‘手机号码‘
21 ,
22 field: ‘operate‘,
23 title: ‘操作‘,
24 formatter: function(val, row, index) return ‘<button href="#" onclick="deleteRow(this)"></button>‘;
25
26 ]
27 ]
28 )
29 );
30
31
32
33 function getRowIndex(target)
34 var tr = $(target).closest(‘tr.datagrid-row‘);
35
36 return parseInt(tr.attr(‘datagrid-row-index‘));
37
38
39 function deleteRow(target)
40 alert(getRowIndex(target));
41 $(‘#membershipCardData1‘).datagrid(‘deleteRow‘, getRowIndex(target));
42
转载地址:https://www.cnblogs.com/MinhongShen/p/7551717.html
以上是关于easyui datagrid没有ID情况下,easyui datagrid 删除行信息方法的主要内容,如果未能解决你的问题,请参考以下文章
Easyui datagrid 扩展单元格textarea editor
jquery-easyui的datagrid(树表),复选框怎么半选?