数据属性值中的特殊字符
Special characters in data attribute values
我有一个 html 可以找到的内容:
<li data-id="87dhqsiu37fGyqUNA786d6F7=">
注意数据属性值末尾的=
符号
我如何 select 使用 jQuery select 或?
我试过了没有成功:
$("li [data-id=87dhqsiu37fGyqUNA786d6F7]")
$("li [data-id=87dhqsiu37fGyqUNA786d6F7\=]")
$("li [data-id=87dhqsiu37fGyqUNA786d6F7\u003D]")
$("li [data-id=87dhqsiu37fGyqUNA786d6F7=]")
每次都给我一个语法错误(第一行除外,它只是找不到元素)。
根据 css 选择器 $("li [data-id=87dhqsiu37fGyqUNA786d6F7]")
表示具有 data-id
属性但在 <li>
.
的子元素中的任何元素
但是这里 <li>
本身是一个具有 data-id
属性的元素。
所以正确的语法是
$('li[data-id="87dhqsiu37fGyqUNA786d6F7="]')
只是 CSS 选择器语法的一个简单问题。
li [data-id=...]
表示 "any element with data-id
of ...
, which is a descendant of any <li>
element"
你要的是li[data-id=...]
,意思是"any <li>
element with data-id
attribute with value of ...
"。
这不是任何特定库的问题,这就是 CSS 选择器的工作方式。
我有一个 html 可以找到的内容:
<li data-id="87dhqsiu37fGyqUNA786d6F7=">
注意数据属性值末尾的=
符号
我如何 select 使用 jQuery select 或?
我试过了没有成功:
$("li [data-id=87dhqsiu37fGyqUNA786d6F7]")
$("li [data-id=87dhqsiu37fGyqUNA786d6F7\=]")
$("li [data-id=87dhqsiu37fGyqUNA786d6F7\u003D]")
$("li [data-id=87dhqsiu37fGyqUNA786d6F7=]")
每次都给我一个语法错误(第一行除外,它只是找不到元素)。
根据 css 选择器 $("li [data-id=87dhqsiu37fGyqUNA786d6F7]")
表示具有 data-id
属性但在 <li>
.
但是这里 <li>
本身是一个具有 data-id
属性的元素。
所以正确的语法是
$('li[data-id="87dhqsiu37fGyqUNA786d6F7="]')
只是 CSS 选择器语法的一个简单问题。
li [data-id=...]
表示 "any element with data-id
of ...
, which is a descendant of any <li>
element"
你要的是li[data-id=...]
,意思是"any <li>
element with data-id
attribute with value of ...
"。
这不是任何特定库的问题,这就是 CSS 选择器的工作方式。