2013-01-18 10 views
9

tôi không thể kiểm tra một loạt hộp kiểm programatically với jquery di động, tôi có đoạn mã sau:Kiểm tra và đài phát thanh bỏ chọn nút với Jquery Mobile

<div data-role="fieldcontain" id="div_radio" class="radiogroup"> 
    <fieldset data-role="controlgroup"> 
     <input type="radio" name="radio-pieces" id="radio-choice-1" value="3" checked="checked" /> 
     <label for="radio-choice-1">1 to 3</label> 

     <input type="radio" name="radio-pieces" id="radio-choice-2" value="5" /> 
     <label for="radio-choice-2">4 to 5</label> 

     <input type="radio" name="radio-pieces" id="radio-choice-3" value="6" /> 
     <label for="radio-choice-3">over 5</label> 
    </fieldset> 
</div> 

Nếu tôi làm: $("input[type='radio']:last").attr("checked",true).checkboxradio("refresh"); mọi thứ hoạt động hoàn hảo, nhưng không ai trong số công việc này ở tất cả:

$("input[type='radio']:first").attr("checked",true).checkboxradio("refresh"); 
$("input[type='radio']:eq(0)").attr("checked",true).checkboxradio("refresh"); 
$("input[type='radio']:eq(1)").attr("checked",true).checkboxradio("refresh"); 
$("input[type='radio']:eq(2)").attr("checked",true).checkboxradio("refresh"); 

Tôi có thể thao tác đúng cách những yếu tố này bằng cách nào? Bỏ chọn tất cả các hộp kiểm cũng hoạt động tốt:

$("input[type='radio']").attr("checked",false).checkboxradio("refresh"); 

Dường như hộp kiểm duy nhất hoạt động là hộp cuối cùng.

+0

Bất kỳ sự giúp đỡ? xin vui lòng –

Trả lời

22

Tất cả đều hoạt động tốt. Bạn chỉ cần kích hoạt refresh trên tất cả input radio trong nhóm.

$("input[type='radio']:first").attr("checked", "checked"); 
$("input[type='radio']").checkboxradio("refresh"); 

jsFiddle là here.

+0

Đó là nó !!!! Tôi đã phải làm mới tất cả các đài phát thanh đầu vào trong nhóm !!! Cảm ơn rất nhiều!!! –

0

Điều này có vẻ không đúng. Không cần báo giá đơn là đầu vào [loại = radio] là chính xác. Tôi đang sử dụng phiên bản lỗi thời (1.1.1). Sẽ rất hữu ích khi biết bạn đang sử dụng phiên bản nào.

Hãy nhớ rằng đó là các nút radio, chỉ một nút được chọn tại một thời điểm.

0

trong nút radio di động Jquery làm mới như thế này:

$(".iscfieldset input[type='radio']:first").attr("checked", "checked"); 


    $(".iscfieldset input[type='radio']").checkboxradio().checkboxradio("refresh"); 

thử làm việc tốt này cho tôi

4

Không có gì làm việc cho tôi trừ:

$('#reset').click(function(){ 
    $('#Store').trigger("click").trigger("click"); // yes... twice 
}); 

On jQuery Mobile 1.4.2.

1

Đối với tôi làm việc này để bỏ chọn toàn bộ nhóm radio:

$(".my_class").removeAttr("checked"); 
$(".my_class").checkboxradio("refresh");