2013-11-02 89 views
0

http://jsfiddle.net/tearex/untbe/Javascript或JQuery的:點擊一個單選按鈕

<body style="text-align:center"> 
    <a> 
    HOW TO check a button 
    </a> 
     <fieldset data-role="controlgroup" data-type="horizontal" > 
<input name="btn1" id="a1" type="radio" value="1" /> 
      <label for="a1">1 populate USA</label> 
      <input name="btn1" id="a2" type="radio" /> 
      <label for="a2" class="bigga">2 populate Germany</label> 

    </fieldset> 

如何讓一個按鈕選擇?

document.getElementById('a2').attr('checked', 'checked') 

jQuery("#a2").attr('checked', true); 
jQuery("input[value='1']").attr('checked', true); 
jQuery('input:radio[name="type"]').filter('[value="1"]').attr('checked', true); 

我已經嘗試了所有在其他線程中找到的方法,但都沒有工作。

回答

1

在一般意義上,如果你有一個直接引用DOM元素,你可以只設置.checked屬性:

document.getElementById('a2').checked = true; 

...或者,如果你正在使用jQuery使用.prop()方法:

$("#a2").prop("checked", true); 

不過,我在你的小提琴,你正在使用jQuery移動,增加了特殊的造型注意到和元素顯示給用戶不實際的單選按鈕元素。對於這種情況,截至jQuery mobile radio buttons doco page底部解釋的,如果你用JS設置的選中狀態,你則需要調用.checkboxradio("refresh")告訴jQuery Mobile的更新顯示:

$("#a2").prop("checked", true).checkboxradio("refresh"); 

演示:http://jsfiddle.net/untbe/1/

1

你需要使用jQuery的包裝使用像.attr()方法,但設置你需要使用vanila使用.prop()

$('#a2').prop('checked', true); 
$y('input[name="type"][value="1"]').prop('checked', true); 

checked屬性的JavaScript

document.getElementById('a2').checked = true 
+0

這裏的你可以查看一個plnk.http://plnkr.co/edit/vhyWeTi8ixlsradfCeVN?p =預覽 – uptownhr

相關問題