我有这个字符串
$html = "`<li class="A" test_id=".0.1.$111">
...
<li class="A" test_id=".0.2.$222">`"
我想用jQuery获得类A的内容,其中test_id =“。0.1。$ 111”
我正在尝试这个,但它不起作用
$(html).find("class[value='A'],test_id[value='.0.1.$111']");
有谁知道出了什么问题?
由于
答案 0 :(得分:1)
属性选择器的语法不正确,您不需要value=
。此外,还有一个按类选择的特定语法:.
。试试这个:
$(html).find(".A[test_id='.0.1.$111']");
请注意,向HTML添加非标准属性无效,您应在其前面添加data-
:
$html = '<li class="A" data-test-id=".0.1.$111"><li class="A" data-test-id=".0.2.$222">';
var $li = $(html).find(".A[data-test-id='.0.1.$111']");
您还可以使用filter()
:
$(html).find('.A').filter(function() {
return $(this).data('test-id') == '.0.1.$111';
});
答案 1 :(得分:0)
$('.A[test_id=".0.1.$111"]').addClass('selected');
&#13;
.selected { color:red }
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="A" test_id=".0.1.$111">test</li>
<li class="A" test_id=".0.2.$222">test</li>
</ul>
&#13;