[英]How to use nested selectors in jQuery
只是在jQuery中测试了一些代码片段,基本上我的代码中的错误现在就在此部分:
的HTML
<div id="qi_table">
<tr name="1">
<td>
<input type="text" name="qty" class="qty">
</td>
</tr>
<tr name="2">
<td>
<input type="text" name="qty" class="qty">
</td>
</tr>
<tr name="3">
<td>
<input type="text" name="qty" class="qty">
</td>
</tr>
</div>
JS
var sysID = 2;
$('#qi_table tr').eq(0).find('input[name=qty]').val( sysID );
我期望结果是3个文本输入字段,第一个文本字段用数字“ 2”填充。
结果是我只得到3个空文本字段。 这是怎么回事? 我是否使用jQuery后代选择器不正确?
链接: http : //jsfiddle.net/1nf6n0vf/1/
框架设置为jQuery 1.10.1
您的jQuery很好,您需要在<table>
元素内包含<table>
<tr>
元素。
您需要更改HTML,以使表行和单元格位于table
内部(而不仅仅是div
);
<table id="qi_table">
<tr name="1">
<td>
<input type="text" name="qty" class="qty">
</td>
</tr>
<tr name="2">
<td>
<input type="text" name="qty" class="qty">
</td>
</tr>
<tr name="3">
<td>
<input type="text" name="qty" class="qty">
</td>
</tr>
</table>
然后,您的jQuery应该可以正常工作。
您可以简化查询:
$("input[name='qty']", "#qi_table").val(sysID);
然后,您在qi_table中搜索所有输入。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.