简体   繁体   English

如何使用父 ID 或 DIV 替换/删除子类

[英]How to replace/remove the child class using parent ID or DIV

Suppose I want to remove the abc class in the div contained just inside the "oneClass" and replace it with another class name may be "xyz" , Note that I DO NOT want the "abc class" inside the "twoClass" to be replaced Can some one guide me how to achieve it?假设我想删除包含just inside the "oneClass"中的div中的abc class并将其替换为另一个类名可能是"xyz" ,请注意,我不希望替换"twoClass""abc class"有人可以指导我如何实现它吗?

<div class = "oneClass" id = "oneId">
        <div class = "abc">  // NOT ALLOWED TO ADD ANYTHING HERE
            Phil
        </div>
    </div>

    <div class ="twoClass" id = "twoId">
        <div class = "abc">  // NOT ALLOWED TO ADD ANYTHING HERE
            Heath
        </div>
    </div>

After applying jquery or javascript the output should be应用 jquery 或 javascript 后,输出应该是

<div class = "oneClass" id = "oneId">
        <div class = "xyz">  // CLASS NAME GOT CHANGED
            Phil
        </div>
    </div>

    <div class ="twoClass" id = "twoId">
        <div class = "abc">  // CLASS NAME REMAINES SAME
            Heath
        </div>
    </div>

Kindly guide me here.请在这里指导我。

Use the child selector > in jQuery to select the element with class abc directly under oneClass .使用 jQuery 中的子选择器 >直接在oneClass下选择类abc的元素。 Then simply remove the abc class and add the xyz class to it.然后只需删除abc并将xyz添加到它。

 $(".oneClass > .abc").removeClass("abc").addClass("xyz")
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class = "oneClass" id = "oneId"> <div class = "abc"> Phil </div> </div> <div class ="twoClass" id = "twoId"> <div class = "abc"> Heath </div> </div>

var a = $('.oneClass');
var childEle = a.children();
Array.prototype.forEach.call(childEle,function(ele) {
    ele.classList = "xyz";
})
<div class = "oneClass" id = "oneId">
        <div class = "abc">  // NOT ALLOWED TO ADD ANYTHING HERE
            Phil
        </div>
    </div>

    <div class ="twoClass" id = "twoId">
        <div class = "abc">  // NOT ALLOWED TO ADD ANYTHING HERE
            Heath
        </div>
    </div>

        function find(){

            $('div#oneID').childern('div').addClass('success');

            $('div#oneID').childern('div').removeClass('success');

        };

try this one.试试这个。

find , removeClass and addClass do what you want like this. find , removeClassaddClass做你想做的事情。

 $('.oneClass').find('.abc').removeClass('abc').addClass('xyz');
 .xyz{ width: 500px; margin: auto; border: 3px solid #73AD21; }
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class = "oneClass" id = "oneId"> <div class = "abc"> // NOT ALLOWED TO ADD ANYTHING HERE Phil </div> </div> <div class ="twoClass" id = "twoId"> <div class = "abc"> // NOT ALLOWED TO ADD ANYTHING HERE Heath </div> </div>

You should use the id of the parent div.您应该使用父 div 的 id。

$('#oneID > .abc').removeClass('abc').addClass('xyz');

 $('#oneId > .abc').removeClass('abc').addClass('xyz');
 .xyz { width: 100px; height: 100px; background-color: red; }
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="oneClass" id="oneId"> <div class="abc"> <!-- NOT ALLOWED TO ADD ANYTHING HERE Phil --> </div> </div> <div class="twoClass" id="twoId"> <div class="abc"> <!-- NOT ALLOWED TO ADD ANYTHING HERE Heath --> </div> </div>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM