我目前有一个动态生成数组输入的表单。我想要做的是获取某个数组索引的输入并继续我必须执行的一些任务(验证等)。
现在,我知道我可以像这样选择输入:
var id = $('#hiddenInputContainer').find('[name="item[1][id]"]')
var name = $('#hiddenInputContainer').find('[name="item[1][name]"]');
// so on...
但我在想是否可以将输入的搜索范围缩小到[name^='item[1]']
然后找到id
and name
。
在我的情况下,hiddenInputContainer
会有很多输入,我想尽可能地优化 javascript。那么我将如何缩小列表范围呢?
PS我试过做var inputs = $('#hiddenInputContainer').find('[name="item[1]"]')
和之后inputs.find('[name*="id"]')
,但由于某种原因这不起作用?
html 外观示例:
<div id="hiddenInputContainer">
<input type="hidden" name="item[1][id]" value="1"/>
<input type="hidden" name="item[1][name]" value="a name for item 1"/>
<input type="hidden" name="item[2][id]" value="2"/>
<input type="hidden" name="item[2][name]" value="a name for item 2"/>
<input type="hidden" name="item[3][id]" value="51"/>
<input type="hidden" name="item[3][name]" value="a name for item 51"/>
</div>