在javascript中获取具有类似id数组的所有元素

ACs*_*ACs 4 html javascript arrays

我在html页面上有这样的元素:

<input id="serial[301888][0]" type="hidden" value="51.0100|T2-QQQ" name="serial[301888][0]">
<input id="serial[301888][1]" type="hidden" value="5.0900|T2-WWW" name="serial[301888][1]">
<input id="serial[301888][2]" type="hidden" value="11.1100|T2-XXX" name="serial[301888][2]">
<input id="serial[301888][3]" type="hidden" value="22.5600|T2-YYY" name="serial[301888][3]">
<input id="serial[301888][4]" type="hidden" value="10.2300|T2-ZZZ" name="serial[301888][4]">
Run Code Online (Sandbox Code Playgroud)

不使用jQuery,我怎么能把所有这些元素都放到一个数组中?

Jam*_*lly 9

您可以将JavaScript document.querySelectorAll与CSS的^=属性选择器结合使用:

document.querySelectorAll('[id^="serial[301888]"]');
Run Code Online (Sandbox Code Playgroud)

这将生成一个id属性开头的所有元素的数组"serial[301888]".

  • 请注意,这绝对是*不是一个数组(根据要求). (2认同)