【问题标题】:jquery, select one before last <tr> and then a specific <input> insidejquery,在最后一个 <tr> 之前选择一个,然后在里面选择一个特定的 <input>
【发布时间】:2021-06-08 05:50:39
【问题描述】:
我有这样的结构
<div id="images_content_876454323">
<form>
<table>
<tr class="target-class"></tr>
<tr class="target-class"></tr>
<tr class="target-class">
<td>
<div>
<input/>
</div>
</td>
</tr>
<tr class="target-class"></tr>
<table>
</form>
</div>
我想用 jQuery 选择“前一个”.target-class 内的<input>
不知道如何做到这一点而不是“hacky”
【问题讨论】:
-
选择.target-class 并使用prev() 和find() 的组合。如果您需要帮助调试您拥有的代码,请将其添加到问题中
标签:
html
jquery
forms
input
jquery-selectors
【解决方案1】:
首先,关闭你的表格标签。
<div id="images_content_876454323">
<form>
<table>
<tr class="target-class"></tr>
<tr class="target-class"></tr>
<tr class="target-class">
<td>
<div>
<input value="textvalue"/>
</div>
</td>
</tr>
<tr class="target-class"></tr>
</table>
</form>
</div>
我在输入标签中做了一个示例值。
var table = $('tr');
console.log('inputValue', $(table).eq(2).find('input').val());
如果您想要动态输入值,您可以在 eg 上执行点击功能。
var table = $('tr');
$("#images_content_876454323").click(function() {
var str = $(table).eq(2).find('input').val();
alert(str);
});
所以你会通过点击得到输入字段的当前值。