我正在动态创建一个html表。
$('#facilityModalTable').append('<tr><td></td><td></td><td></td><td></td><td></td></tr>');
每行都会有一个<input type=Button value=Select />
。我想在点击的选择按钮row
中获取所有row
数据。我可以想到几个选项,但我不确定该选择哪个。
data-uniqueid
属性并分配给一行中的每一列。siblings()
来解决问题。你推荐什么?
答案 0 :(得分:1)
$(this).closest('tr');
http://api.jquery.com/closest/
与parents()
不同,closest()
向上移动DOM树,直到找到所提供选择器的匹配项。如果是嵌套表,parents('tr')
会前往文档的根元素,可能会选择其他表行。
答案 1 :(得分:1)
我不知道这是否是最简单的方式,但这就是我可能只是从头脑中接近它的方式:
$("#facilityModalTable").append('<tr><td><input type="Button" value="Select"/></td><td>Hello</td><td>Red</td><td>12345</td><td>Buffalo, NY</td></tr>').find("input[type=button]").bind("click", function (e) {
var $this = $(this),
arrData = [];
$this.parent().siblings().each(function (i, cell) {
arrData[i] = $(cell).text();
});
});
在此代码中,我添加了按钮并填写了一些值仅用于测试目的。我在这里做了一些假设,如果有些事情与你想要做的事情不完全一致,请原谅我。
如果有更快,更有效的方法,我不会感到惊讶。这只是一分钟之内。
干杯!
答案 2 :(得分:0)
简单:
$(this).parents("tr:first").css('border','solid 1px red');
每当TR中的一个被点击的项目 - 它去你并搜索其TR父级然后......