2012-03-27 29 views
0

我試圖「修改/改變」這種代碼的工作方式,我希望它只允許從30個或更多的選擇中選擇一個單選按鈕。就像現在寫的那樣,它會在提交之前查找所有選定內容。我是一個noob,請善良。從衆多選擇中的一個無線電

<script type="text/javascript"> 
      function checkform() { 
       //make sure all picks have a checked value 
       var f = document.entryForm; 
       var allChecked = true; 
       var allR = document.getElementsByTagName('input'); 
       for (var i=0; i < allR.length; i++) { 
        if(allR[i].type == 'radio') { 
         if (!radioIsChecked(allR[i].name)) { 
          allChecked = false; 
         } 
        }  
       } 
       if (!allChecked) { 
        return confirm('One or more picks are missing for the current week. Do you wish to submit anyway?'); 
       } 
       return true; 
      } 
      function radioIsChecked(elmName) { 
       var elements = document.getElementsByName(elmName); 
       for (var i = 0; i < elements.length; i++) { 
        if (elements[i].checked) { 
         return true; 
        } 
       } 
       return false; 
      } 
      </script> 
+1

那麼你的表單現在是什麼樣子?這是全部無線電嗎?你爲什麼不讓他們成爲一個廣播組(給他們所有相同的名稱值name =「theseHereRadios」),那麼他們只能選擇1? – jveselka 2012-03-27 19:24:31

回答

0

使用計數器而不是「allChecked」的標誌。

將其設置爲零。如果元素被選中,請使用allChecked++,然後檢查最後的值是否爲1。

+0

我真的很新鮮,在這可能會超過我的頭。你能詳細說明一下嗎? – Rickos 2012-03-27 20:04:21

+0

通常單選按鈕應該讓你檢查我們的許多項目。你可以將它們分組,但每個組應該檢查一個。如果您有選擇允許選擇多個項目,我們將使用複選框。 – 2012-03-27 20:06:42

+0

頁面加載的方式很複雜, – Rickos 2012-03-28 02:16:20

相關問題