猿问

使用 JQuery 或 Javascript 从多维 HTML 名称数组中选择二级键

pref[*][location][]如何像使用 jQuery 选择器或 Javascript一样选择所有具有名称的输入?我有兴趣通过二级键“位置”获取它。


<input type="text" name="pref[1][term][]" value="no">

<input type="text" name="pref[1][term][]" value="no">

<input type="text" name="pref[1][location][]" value="get_this">

<input type="text" name="pref[1][location][]" value="get_this_too">

<input type="text" name="pref[1][other]" value="no">

<input type="text" name="pref[2][term][]" value="no">

<input type="text" name="pref[2][location][]" value="get_this_too">

<input type="text" name="pref[2][location][]" value="get_this_too">

<input type="text" name="pref[3][term][]" value="no">

<input type="text" name="pref[3][other]" value="no">

<input type="text" name="location" value="no">


慕村9548890
浏览 146回答 2
2回答

守着星空守着你

您可以使用$.each函数来获取inputs您拥有的所有内容,然后filter使用它们的属性将它们取出name。input要通过二级密钥获取所有内容,[location]我们可以使用includes方法,这样我们将只获取containing输入key。现场工作演示:$('input').each(function(i, el) {&nbsp; if ($(el).attr('name').includes('[location]')) {&nbsp; &nbsp; console.log(el)&nbsp; }})<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><input type="text" name="pref[1][term][]" value="no"><input type="text" name="pref[1][term][]" value="no"><input type="text" name="pref[1][location][]" value="get_this"><input type="text" name="pref[1][location][]" value="get_this_too"><input type="text" name="pref[1][other]" value="no"><input type="text" name="pref[2][term][]" value="no"><input type="text" name="pref[2][location][]" value="get_this_too"><input type="text" name="pref[2][location][]" value="get_this_too"><input type="text" name="pref[3][term][]" value="no"><input type="text" name="pref[3][other]" value="no"><input type="text" name="location" value="no">

慕标5832272

按照@AlwaysHelping 的建议使用filter:$('input[name^="pref"]').filter('[name*="location"]')或者匹配结尾部分的名称属性,虽然有点老套。$('input[name$="[location][]"]')
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答