Html嵌套元素删除类

时间:2014-06-27 11:39:39

标签: javascript jquery css

HTML

<li id="tree0_2_2" data-rowkey="0_2_2">
    <span>
       <span></span>
       <span></span>
       <span class="ui-state-highlight">Something</span>
    </span>
</li>

的jQuery

var removedNode = $('#tree0_2_2');
$(removedNode.find(".ui-state-highlight")).removeClass('.ui-state-highlight');

我试过了,但它没有奏效。

如何删除课程&#39; ui-state-higlight&#39;

5 个答案:

答案 0 :(得分:3)

您可能错过了结束语并从.

中删除了removeClass

<强> Live Demo

var removedNode = $('#tree0_2_2');
removedNode.find(".ui-state-highlight").removeClass('ui-state-highlight');

removedNode是jQuery对象,您无需再次将其传递给$()。您可以将其减少为单一陈述。

<强> Live Demo

$('#tree0_2_2 .ui-state-highlight').removeClass('ui-state-highlight');

答案 1 :(得分:3)

.中的课程名称前removeClass不需要:

$('#tree0_2_2').find('.ui-state-highlight').removeClass('ui-state-highlight');

N.B。:您实际上并不需要多次将jQuery对象包装在另一个jQuery对象中,只需执行一次,如上面的解决方案中所示。

答案 2 :(得分:1)

试试这个。您的代码包含许多语法错误

$('#tree0_2_2').find("span.ui-state-highlight").removeClass('ui-state-highlight');

你的代码就像这样

var removedNode = $('#tree0_2_2');
removedNode.find(".ui-state-highlight").removeClass('ui-state-highlight');

答案 3 :(得分:1)

尝试,

$("#tree0_2_2 .ui-state-highlight").removeClass('ui-state-highlight');

或者

$(".ui-state-highlight", "#tree0_2_2").removeClass('ui-state-highlight');

答案 4 :(得分:1)

HTML:

<li id="tree0_2_2" data-rowkey="0_2_2">
    <span>
       <span></span>
       <span></span>
       <span class="ui-state-highlight">Something</span>
    </span>
</li>

JQuery:

var removedNode = $('#tree0_2_2');
removedNode.find(".ui-state-highlight").removeClass('ui-state-highlight');

在变量之后,您不需要写$(removedNode.find())