我有一个包含文本输入的动态生成的 td 的表,我需要从行中的第一个 td 获取值,并根据我在 <select>
中选择的内容插入其中一个输入。这是由按钮触发的。
到目前为止,我能够通过 first-child 获得我需要的值,并且从我的选择中我得到了与输入类相同的选项值。
$("#t_a").click(function() {
var selected = $('select[name=t_r]').val();
$("table tr").each(function() {
var s = $(this).find('td:first-child').html();
$(this).find('.' + selected).attr("value", s);
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="t_r" name="t_r" style="width:200px;">
<option value="1234">Option 1234</option>
<option value="1235">Option 1235</option>
<option value="1236">Option 1236</option>
</select>
<input type="button" name="t_a" id="t_a" value="Apply" />
<table>
<tr>
<td>123</td>
<td><input type="text" id="a_1234" class="1234" value=""></td>
<td><input type="text" id="a_1235" class="1235" value=""></td>
<td><input type="text" id="a_1236" class="1236" value=""></td>
</tr>
<tr>
<td>321</td>
<td><input type="text" id="b_1234" class="1234" value=""></td>
<td><input type="text" id="b_1235" class="1235" value=""></td>
<td><input type="text" id="b_1236" class="1236" value=""></td>
</tr>
<tr>
<td>456</td>
<td><input type="text" id="c_1234" class="1234" value=""></td>
<td><input type="text" id="c_1235" class="1235" value=""></td>
<td><input type="text" id="c_1236" class="1236" value=""></td>
</tr>
</table>
最佳答案
在 monkawitz 和 user7290573 的帮助下,我使用 val() 而不是 attr() 解决了我的问题。
感谢 Tim Lewis 的指导。
关于javascript - 将 TD 值复制到 TD 内动态创建的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57861061/