Javascript 仅在某些行上绑定事件

Javascript 仅在某些行上绑定事件,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,实际上,我在表的所有tr上绑定了一个dblclick事件 $('#memberPaymentTableResult tr').bind("dblclick", null, memberPaymentSelectedRow); 我桌子的结构 <tr> <td data-payment-id={{paymentId}}>{{paymentId}}</td> <td data-contract-id={{contractId}}>

实际上,我在表的所有tr上绑定了一个dblclick事件

$('#memberPaymentTableResult tr').bind("dblclick", null, memberPaymentSelectedRow);
我桌子的结构

<tr>    
    <td data-payment-id={{paymentId}}>{{paymentId}}</td>
    <td data-contract-id={{contractId}}>{{contractId}}</td>
    <td>{{replace price "." ","}}</td>
    <td>{{moment date "L"}}</td>
    <td data-status={{status}}>
</tr>

{{paymentId}
{{contracted}}
{{替换价格“,”}
{{时刻日期“L”}
是否可以仅在数据状态为!=完成?

一种解决方案是:

您可以将公共类添加到创建html时数据状态为“已完成”的所有tr中。因此,您可以直接从该类定义dblclick事件

第二种解决方案:

在dblclick事件中,您可以检查数据状态是否已完成,然后返回false

一种解决方案是:

您可以将公共类添加到创建html时数据状态为“已完成”的所有tr中。因此,您可以直接从该类定义dblclick事件

第二种解决方案:

在dblclick事件中,您可以检查数据状态是否已完成,然后返回false

试试这个

$('#memberPaymentTableResult tr[data-status!="COMPLETED"]').bind("dblclick", null, memberPaymentSelectedRow);
试试这个

$('#memberPaymentTableResult tr[data-status!="COMPLETED"]').bind("dblclick", null, memberPaymentSelectedRow);
与一起使用,并通过事件委派添加较少的事件

$(“#memberPaymentTableResult”)。在(“单击”,“tr:has(td[data status!=“COMPLETED”])”上,函数(){
$(此).toggleClass(“选定”);
});
。所选td{背景色:黄色;}

不
对
对
不
与一起使用,并通过事件委派添加较少的事件

$(“#memberPaymentTableResult”)。在(“单击”,“tr:has(td[data status!=“COMPLETED”])”上,函数(){
$(此).toggleClass(“选定”);
});
。所选td{背景色:黄色;}

不
对
对
不