我目前有一个非常疯狂的代码,可以单击并展开动态表中的行。我的问题是我需要使表中的最后一列不可单击,而且我也不知道该怎么做。我已经搜索了互联网并尝试了不同的方法,但是似乎没有任何帮助。
这是我的桌子:
<table id="myTable">
<tr>
<th>Name</th>
<th>Type</th>
<th>Details</th>
</tr>
{{#each companies}}
<tr class="record">
<td>
{{this.name}}
</td>
<td>
{{this.type}}
</td>
<td id="details">
<img style="height: 20px; width: 20px" src="img/arrow_right.png">
</td>
</tr>
{{/each}}
</table>
我想使最后一栏(ID =“ details”)不可点击。
这是我疯狂的点击事件:
$("#myTable").on("click", "tr.record", function () {
var rowIndex = this.rowIndex,
services = null;
var self = this;
$.ajax({
url: "api/relation",
type: 'GET',
success: function (response) {
if (response[rowIndex - 1].relationStats) {
services = response[rowIndex - 1].relationStats.PROVIDES_SERVICE;
}
if (services > 0 && $(self).hasClass('record active')) {
console.log("CLOSING");
$(self.nextSibling).remove();
$(self).removeClass('active');
} else if (services > 0) {
console.log("OPENING");
var openDetails = $('<tr/>').addClass('openDetails').insertAfter(self);
$(self).addClass('active');
var td = $('<td/>').addClass('td').appendTo(openDetails);
$('<p/>').html("Provides service(s): ").appendTo(td);
$('<td/>').html(services).appendTo(openDetails);
}
}
});
});
任何帮助,将不胜感激!
无需注册点击处理程序即可tr
使用td
和过滤掉最后一个孩子
$("#myTable").on("click", "td:not(:last-child)", function () {
var self = $(this).closest('tr').get(0), rowIndex = self.rowIndex,
services = null;
$.ajax({
url: "api/relation",
type: 'GET',
success: function (response) {
if (response[rowIndex - 1].relationStats) {
services = response[rowIndex - 1].relationStats.PROVIDES_SERVICE;
}
if (services > 0 && $(self).hasClass('record active')) {
console.log("CLOSING");
$(self.nextSibling).remove();
$(self).removeClass('active');
} else if (services > 0) {
console.log("OPENING");
var openDetails = $('<tr/>').addClass('openDetails').insertAfter(self);
$(self).addClass('active');
var td = $('<td/>').addClass('td').appendTo(openDetails);
$('<p/>').html("Provides service(s): ").appendTo(td);
$('<td/>').html(services).appendTo(openDetails);
}
}
});
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句