我正在寻找的是一种在桌面上查找文本并报告该字段旁边的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我应该得到等等测试 *
我做错了什么?
答案 0 :(得分:0)
使用
var a=$(this).html()
而不是
var a = $(this).siblings('td.eClass').html()
答案 1 :(得分:0)
我自己找到答案(朋友帮忙)
在.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)
};
});
});