Jquery 单击事件时排除类元素
当您单击该行时,该表将显示详细信息。问题是我有数量(减/加)链接,它会使输入值变小。当我点击链接时,我的表格会显示详细信息,我不想这样做。我只想在单击行而不是链接时显示详细信息 这是我的HTML:Jquery 单击事件时排除类元素,jquery,html,class,Jquery,Html,Class,当您单击该行时,该表将显示详细信息。问题是我有数量(减/加)链接,它会使输入值变小。当我点击链接时,我的表格会显示详细信息,我不想这样做。我只想在单击行而不是链接时显示详细信息 这是我的HTML: <div class="table-responsive"> <div id="detailedTable_wrapper" class="dataTables_wrapper form-inline no-footer"> <table cla
<div class="table-responsive">
<div id="detailedTable_wrapper" class="dataTables_wrapper form-inline no-footer">
<table class="table table-hover table-condensed table-detailed dataTable no-footer" id="detailedTable" role="grid">
<thead>
<tr role="row">
<th class="sorting_disabled" rowspan="1" colspan="1"><?=_("Produits")?></th>
<th style="width:120px;" class="sorting_disabled" rowspan="1" colspan="1"></th>
</tr>
</thead>
<tbody>
<tr role="row">
<td class="v-align-middle semi-bold">Test</td>
<td class="v-align-middle text-right">
<div class="input-group">
<span class="input-group-addon primary">
<a href="#" class="quantityMinus"><i class="fa fa-minus-circle"></i></a>
</span>
<input type="text" class="form-control text-center quantity" data-v-min="0" data-v-max="999" placeholder="0" autocomplete="false" style="width:50px;">
<span class="input-group-addon primary">
<a href="#" class="quantityPlus"><i class="fa fa-plus-circle"></i></a>
</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
为了排除链接,您需要截取
单击事件
对象,然后使用它的目标
属性来查找属性
,这些属性最能定义您要查找的比较值和默认行为(如果有类似的重定向等)
例如:
$('#detailedTable tbody').on('click', 'tr', function () {
//var row = $(this).parent()
if ($(this).hasClass('shown') && $(this).next().hasClass('row-details')) {
$(this).removeClass('shown');
$(this).next().remove();
return;
}
var tr = $(this).closest('tr');
var row = table.DataTable().row(tr);
$(this).parents('tbody').find('.shown').removeClass('shown');
$(this).parents('tbody').find('.row-details').remove();
row.child(_format(row.data())).show();
tr.addClass('shown');
tr.next().addClass('row-details');
});
$("#detailedTable tbody").delegate("tr", 'click',function(e)
{
if(e.target.className == "quantityMinus" || e.target.className == "quantityPlus")
e.preventDefault();
});