JQuery «удалить класс» - пытается удалить все элементы с определенным классом - PullRequest
2 голосов
/ 25 декабря 2009

Итак, у меня есть 2 div, каждый с n-элементами. Есть 2 пары элементов через 2 деления. Каждая пара использует один и тот же «класс».

Можно ли удалить определенную пару за раз? В настоящее время я использую следующий код:

    function leaveGroup(id)
    {

        var e = document.getElementById(id);
        var f = $(e).parentNode;

        // Remove everything with the same class name of the parent
        $('body').removeClass($(f).className);

    }

Функция не работает, я неправильно использую имена классов? Спасибо!

Ответы [ 3 ]

7 голосов
/ 25 декабря 2009
$('.el').remove() 
// would remove all elements with the 'el' className

Я верю, что это то, что вы хотите. removeClass удаляет класс. remove удаляет элемент.

2 голосов
/ 25 декабря 2009

Вы неправильно понимаете jQuery.

Функция removeClass удаляет класс из существующего элемента.

Вы хотите написать следующее:

var className = $('#' + id).parent().attr('class');
$('.' + className).remove();

Обратите внимание, что это не будет работать, если родительский узел имеет несколько классов.

0 голосов
/ 25 июня 2014

Когда вы сказали, удалить, вы хотите удалить класс элемента? Если вы хотите удалить элемент, вы можете сделать это:

div = document.getElementByClassName ('yourClass');

Теперь у вас есть коллекция итенов, и теперь вы можете удалить нужный элемент, например:

DIV [1] .remove ();

если вы хотите удалить все сразу

для (я в div) {i.remove (); }

...