如何使用jQuery将数据插入最近的td?
我试图获取输入文本框的值,并将该值插入同一行中的td中 以下是我的HTML代码:如何使用jQuery将数据插入最近的td?,jquery,html,Jquery,Html,我试图获取输入文本框的值,并将该值插入同一行中的td中 以下是我的HTML代码: <table class="test"> <tr ><td class="x"><input type="text" class="testinp"></td><td class="y">Fish</td><td class="z">Chicken</td></tr> <tr &
<table class="test">
<tr ><td class="x"><input type="text" class="testinp"></td><td class="y">Fish</td><td class="z">Chicken</td></tr>
<tr ><td class="x"><input type="text" class="testinp"></td><td class="y">Cricket</td><td class="z">Tenis</td></tr>
<tr ><td class="x"><input type="text" class="testinp"></td><td class="y">Watch</td><td class="z">Hat</td></tr>
</table>
现在我正在获取该值,但无法将其插入td。在输入的子代中查找选择器,而不是父代。所以你需要使用$this.td
然后,您可以这样使用:
$(this).closest('td').siblings('td.z').text(val);
或
获取最近的tr,并查找具有z类的td:
在输入的子代(而不是父代)中查找选择器。所以你需要使用$this.td
然后,您可以这样使用:
$(this).closest('td').siblings('td.z').text(val);
或
获取最近的tr,并查找具有z类的td:
请尝试以下操作:
$(this).closest('td').next('td').html(val);
.find在DOM中不上升,而是下降。因此,您不会在输入字段下找到任何td
编辑:对不起,忘了删除。指向我复制并编辑了你的方法,应该是,下一步 尝试以下操作:
$(this).closest('td').next('td').html(val);
.find在DOM中不上升,而是下降。因此,您不会在输入字段下找到任何td
编辑:对不起,忘了删除。指向我复制并编辑了你的方法,应该是,下一步 试试这个
$('.testinp').keypress(function(e){
if(e.which == 13){
var val = $(this).val();
$(this).parent().parent().find('td').closest('.z').html(val);
}
});
试试这个
$('.testinp').keypress(function(e){
if(e.which == 13){
var val = $(this).val();
$(this).parent().parent().find('td').closest('.z').html(val);
}
});
可以使用同级查找类z
$'.testinp'.keypress函数{
ife.which==13{
var val=$this.val;
$this.closest'td'。兄弟姐妹'td.z'。textval;
}
};
鱼鸡
蟋蟀
帽子
可以使用同级查找类z
$'.testinp'.keypress函数{
ife.which==13{
var val=$this.val;
$this.closest'td'。兄弟姐妹'td.z'。textval;
}
};
鱼鸡
蟋蟀
帽子
这是另一个解决方案 $'.testinp'.keypress函数{ ife.which==13{ var val=$this.val; $this.closest'tr'。查找'td.z'。textval; } }; 鱼鸡 蟋蟀 帽子
这是另一个解决方案 $'.testinp'.keypress函数{ ife.which==13{ var val=$this.val; $this.closest'tr'。查找'td.z'。textval; } }; 鱼鸡 蟋蟀 帽子
也可能值得使用.text而不是.html.And.sibbines而不是.next:我不认为.next在这种情况下会匹配。文档中说:获取匹配元素集中每个元素紧跟其后的同级。如果提供了选择器,则仅当它与该选择器匹配时,它才会检索下一个同级。@Boaz您的建议有效。你能给出这个建议作为回答吗?可能也值得使用.text而不是.html.And.sides而不是.next:我不认为。next在这种情况下会匹配。文档中说:获取匹配元素集中每个元素紧跟其后的同级。如果提供了选择器,则仅当它与该选择器匹配时,它才会检索下一个同级。@Boaz您的建议有效。你能给出这个建议作为回答吗?这是他的标记:是的,有一个td?还是我遗漏了什么。编辑:谢谢,我现在知道了。我忘了取下钥匙。从上面的选择,完全错过了它。抱歉:这是他的标记:是的,有td?还是我遗漏了什么。编辑:谢谢,我现在知道了。我忘了取下钥匙。从上面的选择,完全错过了它。抱歉:请注意,最近的查找最近的父项而不是同级。请注意,最近的查找最近的父项而不是同级。AngularJS将是解决此问题的最佳方案AngularJS将是解决此问题的最佳方案