2011-04-08 85 views
0

嘿傢伙即時嘗試獲取複選框的情況下,我有7個盒子,我試圖得到一個邏輯語句,它的工作原理。我有7個複選框,第7個框是以上全部,當所有上述內容被點擊時,取消選擇以前的所有內容,當選擇1-6時,取消選擇上述全部內容。結果發生在我現在的代碼中,它取消了1-6個盒子的全部選擇,然後他們現在無法點擊。不幸的是,我對事物有所限制。所以我會粘貼我的代碼非常感謝任何幫助。使用Javascript檢查並取消選中複選框

這是一個非常恐怖的編碼片段,我只是通過這一起,而我正在嘗試多種方式來使它工作。

if (document.forms[0].propDetails[6].checked==true) { 
for (var x=0;x<6;x++) { 
document.forms[0].propDetails[x].checked=false; 
} 
} 
else { 
document.forms[0].propDetails[6].checked=false; 
} 
} // end of function 
+0

你好,我不明白你真的想要編碼。你能用簡單的話再說一遍嗎?謝謝。 – reporter 2011-04-08 09:21:12

回答

0

給不同的唯一ID的所有checkboxs ... 像

  • chckbx1

  • chckbx2

  • chckbx3

  • chckbx7

電話上的任何複選框的點擊相同的功能與複選框的對象

onclick=functionname(this);

在一側的功能檢查ID

functioname(str){ 
if(str.id=="chckbx7"){ 
//deselect all except chckbx7 
} 
else{ 
//deselect chckbx7 
} 
} 
1

我首先建議你給一個特定的NAME屬性給1-6複選框,並使用getElementsByName解析它們,如下所示:

<input type="checkbox" id="myChk1" name="myChk" /> 
... 
<input type="checkbox" id="myChk6" name="myChk" /> 

<input type="checkbox" id="myChkAll" onchange="chkAll(this);" /> 

<script type="text/javascript"> 
function chkAll(obj) { 
    var isChecked = obj.checked; 

    var chk1to6 = document.getElementsByName('myChk'); 

    for (var i = 0 ; i < chk1to6.length ; i++) { 
     chk1to6[i].checked = isChecked; 
    } 
} 
</script> 
相關問題