2010-08-17 3 views
1

У меня есть таблица, содержащая несколько строк, где каждая строка содержит 3 элемента td, последний из которых всегда является переключателем.Таблица доступа, содержащая радиокнопку

У меня есть функция JQuery, которая вызывается, когда любые из этих кнопок радио проверяется:

$('input[type=radio]').change(function() { 
     $('input[type=radio]').each(function(index) { 
      //remove class from tr 
     }); 
     //add class selected to tr 
    }); 

Что я ищу сделать, это изменить класс В, содержащей кнопку, выбранное радио в ' selected 'и удалить класс' selected 'из предыдущего выбранного параметра (для выделения). Есть ли способ получить доступ к tr из переключателя?

ответ

1

Попробуйте это:

$('input[type=radio]').change(function() { 

    $('input[type=radio]').each(function(index) { 
     $(this).closest('tr').removeClass('selected'); 
    }); 

    $(this).closest('tr').addClass('selected'); 
}); 

Обратите внимание, что вы могли бы сделать его короче с $(':radio'), а не $('input[type=radio]').

Дополнительная информация:

+0

Perfect. Благодарю. – jkilbride

+0

@jkilbride: Добро пожаловать :) – Sarfraz

0

Ну это можно сделать, просто удалив класс selected из всех тр, а затем добавить, где мы хотим. Простые eh ..

$('input[type=radio]').change(function() { 
    $(this).parents('table').find('tr').removeClass('selected'); 
    $(this).parents('tr:first').addClass('selected'); 
}); 
Смежные вопросы