我的页面中有一个 jqgrid 组件,网格的行是使用值和操作创建的,例如:
colum: name adresss job edit
row 1: jorge my adress architect [value]
我用数据库中的几行填充网格,并且 aech 行在列编辑到个人页面中有一个值,用于编辑操作。
这个值有这个结构:
<div><span class="edit" idperson="' + items[i].id + '">Edit</span></div>
在同一个脚本中我把这个:
$('.edit').live('click', this.clickedit);
功能是:
clickedit: function(){
$.ajax('person/personedit.htm', {
cache: false,
type : 'POST',
data : { idperson: $(this).attr('idperson')},
success : function(response){
//some actions.....
}
});
},
在我的 java 代码中,我有一个 spring 控制器,它从 jquery 接收这个调用并做一些事情。
我第一次连续单击编辑操作一切正常,但是在使用应用程序一段时间后,我看到一个编辑操作被多次调用,因此 clickedit 函数执行 2、3 或 4 次,而我的 java 代码被击中相同的次数。
关于这个问题的任何想法???
更新:
我现在开始使用 onCellSelect。但我有一个问题。在一个单元格中,我可以通过这种方式进行 3 个不同的操作:
var actions = 'editedOK ? '<div><span class="edit1" idperson="' + items[i].id + '" >EDITOK1 </span><span class="edit2" idperson="' + items[i].id + '">EDITOK2</span></div>' : '<div><span class="editnook1" idperson="' + items[i].id + '">EDITNOOK1</span></div>';
如果 actions = true 我在同一单元格“EDITOK1 EDITOK2”中看到,如果 actions = false 我在此单元格“EDITOK1”中看到
当我点击它时,每个动作都有将功能与不同的行为相关联。
如果我使用 onCellSelect,则可以确定何时点击 EDITOK1、何时点击 EDITOK2 以及何时点击 EDITNOOK1。更重要的是在 EDITOK1 和 EDITOK2 之间进行确定。