属性包含返回空数组的词选择器
Attribute contains word selector returning empty array
我有一些 HTML 类似于:
<input name="arr[something completely random][something else I can't rely on][initial]" />
<!-- ... -->
<input name="arr[dadedadeda][blahblahblah][initial]" />
还有我的JavaScriptdocument.querySelectorAll('[name~="initial"]')
returns[]
(空)。为什么?名称中的多维数组是否以不同方式处理?有什么我想念的吗?
我刚刚尝试了 document.querySelectorAll('[name$="[initial]"]')
、ends with
选择器 (attr$="endStr"
),以及这个 returns 我需要的东西,但我仍然需要知道为什么 attribute contains
选择器 (attr~="inStr"
) 无法工作
对于单词包含过滤器,单词应该用空格分隔,在您的情况下失败,因为您将单词包含在 []
中
相反,您可以使用包含选择器,例如
document.querySelectorAll('[name*="initial"]')
document.querySelectorAll('[name*="[initial]"]')//to be more specific
我有一些 HTML 类似于:
<input name="arr[something completely random][something else I can't rely on][initial]" />
<!-- ... -->
<input name="arr[dadedadeda][blahblahblah][initial]" />
还有我的JavaScriptdocument.querySelectorAll('[name~="initial"]')
returns[]
(空)。为什么?名称中的多维数组是否以不同方式处理?有什么我想念的吗?
我刚刚尝试了 document.querySelectorAll('[name$="[initial]"]')
、ends with
选择器 (attr$="endStr"
),以及这个 returns 我需要的东西,但我仍然需要知道为什么 attribute contains
选择器 (attr~="inStr"
) 无法工作
对于单词包含过滤器,单词应该用空格分隔,在您的情况下失败,因为您将单词包含在 []
相反,您可以使用包含选择器,例如
document.querySelectorAll('[name*="initial"]')
document.querySelectorAll('[name*="[initial]"]')//to be more specific