我正在尝试单击表格行并执行操作。但是,如果他们单击第一个 <td>
我不希望它执行该操作。
这是我到目前为止的代码:
jQuery('#dyntable tbody tr').live('click', function () {
nTr = jQuery(this)[0];
openMessage(oTable, nTr);
});
这按预期工作,除了第一个 <td>
有一个复选框,因此如果他们单击该单元格,我不想调用 o penMessage(oTable, nTr);
功能。
我还需要nTr
to = 该行的内容。
最佳答案
使用行内点击的目标,并检查TD的索引
简化演示:http://jsfiddle.net/WLR9E/
jQuery('#dyntable tbody tr').live('click', function (evt) {
var $cell=$(evt.target).closest('td');
if( $cell.index()>0){
openMessage(oTable, this);
}
});
live() 已弃用,如果使用 jQuery >= 1.7 转换为 on()。以下假设主表是页面中的永久 Assets 。
jQuery('#dyntable').on('click','tbody tr', function (evt) {
var $cell=$(evt.target).closest('td');
if( $cell.index()>0){
openMessage(oTable, this);
}
});
代码中的这一行是多余的,它只是返回与 this
相同的内容
nTr = jQuery(this)[0];
关于jquery - 单击除第一个 td 之外的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11124600/