如何从我在下面创建的jQuery的TD
事件中排除特定的row
(如第一个)?
jQuery("#list tbody tr").click(function(){
alert('click this');
//some code here
});
jQuery("#list tbody tr td.exclude").click(function(){
alert('click not that');
//some code here
});
td { border: 1px solid black; padding: 5px; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="list">
<tr>
<td class="exclude">first</td>
<td>second</td>
<td>third</td>
</tr>
<tr>
<td class="exclude">first</td>
<td>second</td>
<td>third</td>
</tr>
</table>
我需要能为我的row
举办活动,但要从课程TD
中排除exclude
,这可能吗?
答案 0 :(得分:1)
您可以使用not
方法排除元素:
$('#list tr td').not('.exclude').on('click', function(e) {
console.warn('click!');
});
答案 1 :(得分:1)
尝试使用选择器中的:not()
jQuery("#list tbody tr td:not(.exclude)").click(function(){
alert('click this');
//some code here
});
td { border: 1px solid black; padding: 5px; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="list">
<tr>
<td class="exclude">first</td>
<td>second</td>
<td>third</td>
</tr>
<tr>
<td class="exclude">first</td>
<td>second</td>
<td>third</td>
</tr>
</table>
答案 2 :(得分:1)
您可以在事件对象上使用target
属性,并检查它是否具有类exclude
。
$('tr').click(function(e) {
if (!$(e.target)
.parents()
.andSelf()
.hasClass('exclude')) {
alert('Click')
}
})
td {
border: 1px solid black;
padding: 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="list">
<tr>
<td class="exclude"><div><span>first</span></div></td>
<td>second</td>
<td>third</td>
</tr>
<tr>
<td class="exclude">first</td>
<td>second</td>
<td>third</td>
</tr>
</table>
答案 3 :(得分:0)
您可以在jQuery中使用:not选择器,因此它看起来像这样:
jQuery("#list tbody tr td:not(.exclude)").click(function(){
alert('click this');
//some code here
});
答案 4 :(得分:0)
您可以在一次通话中使用:not
css选择器:
jQuery("#list tbody tr td:not(.exclude)");
答案 5 :(得分:0)
试试这个你会得到你的目标......
$(document).ready(function(e) {
$('#list tr').click(function(e) {
if (!$(e.target).hasClass('exclude')) {
alert('Click')
}
})
});