Tôi có một bảng HTML có n hàng và mỗi hàng chứa một radiobutton trong Row.Using jQuery, Làm thế nào tôi có thể xem qua các nút radio này để kiểm tra xem cái nào được kiểm tra?jQuery: Looping tất cả các nút radio bên trong một bảng HTML
Trả lời
$('#table tbody tr input[type=radio]').each(function(){
alert($(this).attr('checked'));
});
HTH.
$('.my-radio-class:checked')
Bạn có muốn để xử lý tất cả các nút radio hoặc làm bạn chỉ cần những người kiểm tra? Nếu sau này, nó là khá dễ dàng:
$('table input:radio:checked')
+1. Tính năng tra cứu của Exaik jQuery đi từ phải sang trái, do đó toàn bộ 'thead tr td' là không cần thiết nếu điều kiện duy nhất là chúng cần phải nằm trong một bảng. Và ': radio' và': checked' là bộ chọn ‘tao nhã’ nhất trong trường hợp này. – Alec
$("table tr input[type=radio]:checked");
Có rất nhiều cách để làm điều đó, ví dụ, sử dụng .each
và phương pháp .is
traversal:
$("table tbody tr td input[name=something]:radio").each(function() {
if($(this).is(":checked")) {
$(this).closest("tr").css("border", "1px solid red");
} else {
// do something else
}
});
Tôi sẽ cung cấp cho +1 nếu bạn có thể cho tôi biết nếu nó được đảm bảo khá tốt rằng tất cả các trình duyệt (hỗ trợ jQuery) sẽ chèn một cách thiếu đáng tin cậy '
'. – user113716@patrick - Không, không phải vậy. Điều đó có nghĩa là bộ chọn của tôi bị hỏng một chút thời gian. Điều đó có nghĩa là tôi sẽ chỉnh sửa câu trả lời này ngay bây giờ. Chết tiệt, nhưng cảm ơn, tôi nên chú ý hơn đến câu trả lời của chính mình trong tương lai :) – karim79
Cảm ơn bạn đã trả lời. 1 cho câu trả lời đúng. – user113716
var checked = $('#table :radio:checked');
//get the checked radio input, put more specificity in the selector if needed
var $checkedRadio = $("input[type=radio]:checked");
//if you want the value of the checked radio...
var checkedRadioVal = $checkedRadio.val();
Để lặp qua tất cả các đài phát thanh kiểm tra nút radio, bạn cũng có thể làm điều này:
$('input:radio:checked').each(function() {
//this loops through all checked radio buttons
//you can use the radio button using $(this)
});
giải pháp hoàn hảo cho tôi. cảm ơn :) –
'#table> tr' sẽ nghẹt thở trên các trình duyệt nhất định (chrome/firefox) mà muốn thêm yếu tố tbody'' của mình , trong khi '#table tr' thì không. – karim79
@ karim79 - sửa đổi – Sunny
Bạn cũng có thể sử dụng công cụ chọn ': radio' (http://api.jquery.com/radio-selector/) – Mottie