Jquery遍历表元素
Jquery traversing table elements
我正在使用Jquery动态填充表元素。我的表将有三列——标签、文本区域和一个按钮。我正在绑定单击按钮时的单击事件。下面是我的Jquery代码。
var rowElem = $('<tr id="'+ key + '" class="queryRow"> </tr>');
rowElem.append($('<td class="queryTitleCol">' + key + '</td>'));
var colElem = $('<td class="queryValueCol"></td>');
var textAreaElem = $('<textarea rows="10" cols="75"/>');
colElem.append(textAreaElem);
rowElem.append(colElem);
textAreaElem.val(value);
var btnCol = $(
'<td valign="top">'
+ '<button style="width:42px; vertical-align:middle; margin:2px;" title="delete">'
+ '<span class="ui-icon ui-icon-trash" style="float:left;"/>'
+ '</button>'
+'</td>');
rowElem.append(btnCol);
$("button", btnCol).click(action);
}
在按钮事件中,我使用Jqury.closest来获取TR标记和标签元素。下面是我的按钮点击代码。
function action() {
var rowElem = $(this).closest("tr");
var labelTD = $(".queryTitleCol", rowElem);
}
但是labelTD,我总是得到作为一个数组的[td.queryTitleCol]。我无法获取td元素来获取able元素。我尝试了find(),但仍然得到td数组。
rowElem.find('td.queryTitleCol');
如何遍历并获取按钮的点击功能上的标签名称。任何帮助都将不胜感激。
尝试
var label = $(".queryTitleCol", rowElem)[0].innerHTML;
或
var label = $(".queryTitleCol", rowElem).text();
您可以尝试类似的东西
$('button').click(function(){
$(this).prev('.queryTitleCol').text();
});
这将始终获取具有queryTitleCol
作为其类的前一个元素。它只返回一个元素,所以您不应该遇到所描述的问题。
你可以试试这个
function action() {
var titleCol = $(this).parent().parent().find('td:eq(0)').text();
}
检查此FIDDLE
相关文章:
- 遍历类元素数组,并在jquery中选择同级元素
- Jquery遍历表元素
- JS.循环遍历多维数组,以计数元素在每列中的出现次数
- 如何使用 document.querySelectorAll 遍历选定的元素
- 当知道同一hiearch中至少有一个元素时,遍历到元素.结构使用jquery
- js循环遍历单击的元素子节点
- 循环遍历元素jquery选择器
- 如何使用jquery遍历具有动态添加元素的数组
- JavaScript元素遍历返回的值超出预期
- 遍历jQuery中的表元素
- 使用 jquery .find() 遍历按类和存储属性选择元素
- 带有 ng-repeat 的 Angular JS 指令无法遍历子元素
- 遍历 DOM 以查找哪个元素具有焦点
- 循环遍历 DOM 元素时,是否有 for 循环的替代方法
- 遍历(获取)元素包装在 标记内
- 如何遍历 d3 中的值内部数组并添加相应的子元素
- JQuery/Javascript - 遍历值之后的所有 json 元素
- 遍历django模板中的json元素
- 如何在遍历表和添加新元素时获得tr的索引
- findout js代码遍历DOM中的哪个元素