如何使用JQuery获取html表格单元格文本值?

如何使用JQuery获取html表格单元格文本值?,jquery,Jquery,当使用以下命令单击此行时,我将设法获取一行中的单元格集合: $('.NamesGridClass tbody tr').bind('click', function() { var ch = $(this).children(); alert(ch[0] + ' ' + ch[1]); }); 上述选择代码段成功显示: [object HTMLTableCellElement][object HTMLTableCellElement] 我尝试了ch[0].html(),ch[0

当使用以下命令单击此行时,我将设法获取一行中的单元格集合:

$('.NamesGridClass tbody tr').bind('click', function() {
    var ch = $(this).children();
    alert(ch[0] + ' ' + ch[1]);
});
上述选择代码段成功显示:

[object HTMLTableCellElement][object HTMLTableCellElement]


我尝试了
ch[0].html()
ch[0].val()
ch[0].text()
,但出现了错误。如何在此处获取单元格内容?

要使用
.html()
,需要将这些对象转换为jQuery对象:

$(ch[0]).html()
这同样适用于您希望应用的任何其他有效jQuery方法。

请使用本机代码

ch[0].innerHTML

当您访问从jQuery获得的数组中的一个项时,您将返回普通的旧javascript元素,而不是jQuery元素。您可以使用javascript.innerHTML,也可以使用jquery选择器双重包装该值。我建议使用.innerHTML,因为它更简单,所以

$('.NamesGridClass tbody tr').bind('click', function() {
        var ch = $(this).children();
        alert(ch[0].innerHTML + ' ' + ch[1].innerHTML);
    });

这是一个jquery标记的问题,因此建议OP使用本地语言似乎不合适。是的,你的“答案”是有效的,但这并不能帮助OP理解为什么他所尝试的不起作用。因为jQuery
.html()
使用相同的方法。再加上一些零碎的东西以确保交叉浏览器的兼容性
.innerHTML
更快
.html()
更安全。我会小心这一建议。如果OP必须支持较旧的浏览器,那么使用
.html()
@jQuery00会更安全,当然,这也会做同样的事情,而且字符更少。但关键是
.html()
只适用于jQuery对象。
ch
$(ch[0])
都是jQuery对象<代码>通道[0]不可用。