2013-12-08 95 views
0

從我所瞭解的無線電可能是最好的選擇,但我需要使用複選框。我在這裏看到一個類似的問題:Uncheck a checkbox if another checked with javascript,除了我希望用戶能夠選擇一個盒子或其他盒子,而只使用兩個複選框,還可以取消選擇哪個盒子檢查,如果他們決定不再希望檢查任一盒子而不必像例子中那樣使用收音機。我有2個複選框,只有一個可以點擊

這裏是例子:

<input class="cb" name="fries" type="checkbox" id="opt1" onchange="cbChange(this)"/> 
<input class="cb" type="checkbox" name="fries" id="opt2" onchange="cbChange(this)"/> 

<input class="cb" type="radio" name="o1" id="hotdog" onchange="cbChange(this)"/> 

,這裏是他們使用的代碼,但這個我沒有取消選擇兩個複選框的選擇,除非我用的是無線電:

function cbChange(obj) { 
var cbs = document.getElementsByClassName("cb"); 
for (var i = 0; i < cbs.length; i++) { 
    cbs[i].checked = false; 
} 
obj.checked = true; 
} 

回答

1

的JavaScript:

function cbChange(obj) 
{ 
    if (obj.checked) { 
     var cbs = document.getElementsByClassName("cb"); 
     for (var i = 0; i < cbs.length; i++) 
      cbs[i].checked = false; 
     obj.checked = true; 
    } 
} 

HTML:

<input class="cb" name="fries" type="checkbox" id="opt1" onchange="cbChange(this)"/> 
<input class="cb" name="fries" type="checkbox" id="opt2" onchange="cbChange(this)"/> 
+0

謝謝!這很好! – user3048136

+0

@ user3048136,如果此答案解決了您的問題,則可以通過單擊答案旁邊的複選標記來接受答案。你也可以閱讀[當某人回答我的問題時該怎麼辦?](http://stackoverflow.com/help/someone-answers) – fbynite

相關問題