Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 选择具有特定锚定标记文本的li标记_Javascript_Jquery_Html - Fatal编程技术网

Javascript 选择具有特定锚定标记文本的li标记

Javascript 选择具有特定锚定标记文本的li标记,javascript,jquery,html,Javascript,Jquery,Html,我有以下代码: <ul id="ulId"> <div> <div> <li class="cModel" style=""><a href="#">4RUNNER</a></li> <li class="cModel" style=""><a href="#">86</a></li>

我有以下代码:

<ul id="ulId">
    <div>
        <div>
             <li class="cModel" style=""><a href="#">4RUNNER</a></li>
             <li class="cModel" style=""><a href="#">86</a></li>
             <li class="cModel" style=""><a href="#">AVALON</a></li>
        </div>
   </div>
</ul>

现在,您正在将类
active
添加到锚点本身,您需要使用jQuery方法转到父节点
li
,然后添加类:

$(“#ulId li”).find('a:contains(4RUNNER')).parent().addClass('active');
//或
//$(“#ulId li”).find('a:contains(4RUNNER')).closest('li').addClass('active')
.active{
背景颜色:绿色;
}


由于当前选择器是锚点,因此可以使用
parent()
以父对象
li
为目标添加类:

$(“#ulId li”).find('a:contains(4RUNNER')).parent().addClass('active')
。激活a{
颜色:红色
}

使用jquery的

/*--------------最近的()--------------------*/
$(“#ulId li”).find('a:contains(4RUNNER)')。最近的('li')。addClass('active');
/*------------------父母()--------------------*/
$(“#ulId li”).find('a:contains(4RUNNER')).parents('li').addClass('active'))
/*------------------父项()--------------------*/
$(“#ulId li”).find('a:contains(4RUNNER')).parent().addClass('active')
.active{
背景颜色:黄色
}


您的代码正在将其添加到锚,而不是li。您可以简单地在li元素上使用contains,因为它将具有与锚点相同的文本

$(“#ulId li:contains(4RUNNER)”).addClass('active')
.active{
背景色:石灰;
}


您正在将类添加到锚定中。是的,我想将其添加到li中。@epascarello那么您为什么选择锚定?用于比较文本。实际上,我想将类添加到具有特定锚文本的li中。@所以为什么不在li上使用contains?仍然会有相同的文本
$("#ulId li").find('a:contains(4RUNNER)').addClass('active')