jquery toggleClass не работает - PullRequest
2 голосов
/ 05 марта 2012

По какой-то причине функция toggleClass не работает.

У меня есть строка таблицы с классом "nodrag" - используется с плагином tableDnD:

<tr id="1" class="nodrag">
<!--Some tds and stuff-->       
</tr>

КогдаЯ щелкаю ссылку, которую хочу включить или выключить класс, с помощью следующего кода, который находится в функции $ (document) .ready:

$("#reorder").click(function(event) {
    $("#1").toggleClass("nodrag");

    if ($(this).text()=='Reorder')
    {
        $(this).text("Done reordering");
    } else {
        $(this).text("Reorder");
    }

    event.preventDefault();
});

Я знаю, что событие click срабатывает, потому что текст ссылкиизменения.Я также знаю, что выбор строки работает, потому что, если я делаю что-то еще с этим, например - $ ("# 1"). Text ("test") - это работает.

Это просто кажется проблемой сtoggleClass.Хотя я искал везде и не нашел ничего, что помогло бы мне.

Заранее спасибо за любую помощь

Ответы [ 2 ]

1 голос
/ 05 марта 2012

Это живое демо, которое идеально подходит для меня

http://jsfiddle.net/Yjqkn/

Попробуйте и дайте мне знать, чем отличается этот код от вашего.

PS: вы всегда должны избегать именования ваших идентификаторов простыми числами, если вам сообщают об этом, ставьте перед буквой любые буквы перед цифрами, например: TblRow1, txt2 .но всегда рекомендуется называть ваши элементы управления значимыми словами, например: txtUsername, lnkDelete, и т. д.

1 голос
/ 05 марта 2012

Похоже, вы вводите вещи в свой тег <tr>, а не в тег * <td> tr
Я проверил, что все работает нормально, если вы поместили содержимое в тег <td>. Смотри здесь http://jsfiddle.net/QjjGD/1/

...