[英]Jquery Contains:value, find text in table and return the td next to it
我正在寻找的是一种在表上查找文本并向该字段旁边的td报告的方法。 用户当然必须输入文本。 由于某些原因,这条线对我不起作用
$("tr td:contains('" + test + "')")
这是代码(另请参见下面的演示):
的HTML
<table>
<tr><td class='eClass'> 4</td><td >test</td></tr>
<tr><td>blah test blah</td><td class='eClass'>2</td></tr>
<tr><td>blah blah test</td><td class='eClass'>3</td></tr>
<tr><td>test blah blah</td><td class='eClass'>4</td></tr>
</table>
<input class="from" value=""></input>
<p class='total'></p>
jQuery的
$(".from").keyup(function () {
var test = $(".from").val()
$("tr td:contains('" + test + "')").each(function () {
var a = $(this).siblings('td.eClass').html()
$(".total").html(a)
});
});
演示: http : //jsfiddle.net/A2Htn/4/
*如果在输入字段中输入4,则应该进行测试。 如果我按3,我应该得到测试*
我究竟做错了什么?
采用
var a=$(this).html()
代替
var a = $(this).siblings('td.eClass').html()
我自己找到了答案(朋友的帮助)
演示: http : //jsfiddle.net/QB79y/
.each中应该有一个if,以便每个返回正确的结果,而不仅仅是最后一个(当然)
$( ".from" ).keyup(function() {
var test = $(".from").val();
$(".tabledata td").each(function(){
if ($(this).html()==test){
var a=$(this).siblings('td').html()
$(".total").html(a)
};
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.