2011-08-12 42 views
8

Tôi đang sử dụng jQuery và tôi có một nhóm các nút radio có cùng tên, nhưng các thuộc tính giá trị khác nhau.Bỏ chọn nhóm các nút radio bằng cách sử dụng jQuery

Ví dụ:

<input type = "radio" name = "thename" value="1"></input> 
<input type = "radio" name = "thename" value="2"></input> 
<input type = "radio" name = "thename" value="3"></input> 

Tôi muốn làm cho nó để tất cả chúng đều không được chọn. Trạng thái hiện tại của trang của tôi có một trong số chúng được nhấp vào. Làm thế nào để tôi làm điều này?

Trả lời

1

Hãy thử đoạn mã sau:

$(input[name=thename]).removeAttr('checked'); 
3

Hãy thử sử dụng này: (. Kiểm tra, lựa chọn, vv) $('input[type="radio"]').prop('checked', false);

Sử dụng phương pháp prop jQuery có thể thay đổi tính chất của các nguyên tố.

+0

Làm việc này tôi đã thêm một trích dẫn đơn sau dấu ngoặc đóng --- $ ('input [type = "radio"]'). Prop ('checked', false); –

+0

@JimEvans Cảm ơn bạn. Tôi không chắc tại sao tôi chưa thấy điều đó cho đến bây giờ. Tôi đã chỉnh sửa câu trả lời để có báo giá đóng. – Kyle

7

Kể từ jQuery 1.6, $("radio").prop("checked", false); là phương pháp được đề xuất.

+1

xin lỗi, điều này không phù hợp với tôi. Tôi đã thử nó. Ngoài ra, nếu tôi có các phần tử radio khác trên trang và tôi không muốn áp dụng hành vi đó cho họ thì sao? – Carl

+1

chỉ cần thử thay đổi bộ chọn. một cái gì đó như '$ (" input [name = 'thename'] ")' –

8
$("input:radio[name='thename']").each(function(i) { 
     this.checked = false; 
}); 

không chắc chắn lý do tại sao các prop jquery không hoạt động và điều này làm ...

+0

Thảo luận tốt về [jQuery's 'prop()' here] (http://stackoverflow.com/a/5876747/557612) – steveax

2

Câu trả lời đăng bởi @matzahboy làm việc một cách hoàn hảo.

thử những cách khác nhưng điều này làm việc tốt nhất:

$(input[name=thename]).removeAttr('checked'); 
0
function resetRadio(name) { 
    $('#form input:radio[name=' + name + ']:checked').each(function() { 
     var $this = $(this); 
     $this.prop("checked", false); 
    }); 
} 

$('#form input:radio').on('dblclick', function() { 
    var $this = $(this); 
    var name = $this.prop('name'); 
    resetRadio(name); 
}); 

này cho phép bạn nhấp đúp chuột vào radio để thiết lập lại chúng.

0

Để bỏ chọn tất cả các radio của một nhóm gọi là "namegroup", hãy thử này:

$("input[type=radio][name=namegroup]").prop("checked", false); 
0

Đây là câu trả lời đơn giản và chung chung (Tôi tin): $("input[name=NAME_OF_YOUR_RADIO_GROUP]").prop("checked",false);

Đối với câu hỏi cụ thể này, tôi sẽ sử dụng:

$("input[name=thename]").prop("checked",false);

Hope this helps

0

nó làm việc cho tôi;

$('input[name="radioName"]').attr('checked', false); 
Các vấn đề liên quan