2010-03-19 28 views
6

Làm cách nào để có được chỉ mục RadioButton đã chọn bằng jQuery? Tôi cần phải đọc nó và lưu vào cookie để tải tình trạng sau sử dụng mãChỉ mục RadioButton của jQuery

$('input[name="compression"]')[{Reading from cookies code}].checked = true; 



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

Trân Tomas

Trả lời

7

này trả về chỉ số zero-based của radiobutton chọn

$('input[name=compression]:checked').index() 

Đối với trường hợp được mô tả trong việc sử dụng bình luận (thường là cú pháp đúng để sử dụng)

$('input[name=porient]:checked').index('input[name=porient]') 

Nếu bạn muốn biết lý do tại sao người đầu tiên cho kết quả sai, bạn nên đọc .index() documentation

Nếu không có tham số được truyền cho phương thức .index(), giá trị trả về là một số nguyên chỉ ra vị trí của phần tử đầu tiên trong đối tượng jQuery liên quan đến các phần tử anh chị em của nó.

Trong mẫu từ câu hỏi, không có bất kỳ anh chị em nào khác ngoài radio của bạn. Vì vậy nó hoạt động.

Trong mẫu từ những nhận xét thẻ <br /> là anh chị em ruột của radiobutton và do đó là về chỉ số 1. Đó là lý do tại sao bạn nghĩ index() cung cấp cho các vị trí sai điều

+0

Strange, nó hoạt động tốt trên "nén" nút radio mã nào được liệt kê ở trên, nhưng trên mã bên dưới cho các nút radio "porient", nó trả về các chỉ mục sai. Nếu nút radio đầu tiên được chọn, nó trả về 0 (ok) nó được chọn thứ hai nó trở về 2 (!!!!) Không thể hiểu những gì đang xảy ra. Bất kỳ ý tưởng?

Chân dung
Landscape

Tomas

+0

Kiểm tra câu trả lời mở rộng – jitter

Các vấn đề liên quan