台灣最大程式設計社群網站
線上人數
1992
 
會員總數:246499
討論主題:190009
歡迎您免費加入會員
討論區列表 >> Java Script/ Node.js >> CheckBox 的問題...
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
CheckBox 的問題...
價值 : 0 QP  點閱數:1162 回應數:0
樓主

困擾
初學者
14 7
0 5
發送站內信

<<另外一篇我好像 PO 錯版了∼對不起!!>>

我想寫一個網頁,有簡單的判斷功能。
當有人勾選 C1 or C2 or C3 or C4 or C5 or C11,按下確定之後,就會開啟網頁 A
當有人勾選 C6 or C7 or C8 or C9 or C10,按下確定之後,就會開啟網頁 B
當有人勾選 C12 or C13 or C14 or C15 or C16 or C17 or C18 or C19 or C20 or C21 or C22 ,按下確定之後,就會開啟網頁 C...

若是其他狀況(沒有打勾),就會出現錯誤訊息...
並且跳到 C1 的核取方塊位置...

而 checkOrder() 則是檢查,讓使用者只能打一個勾∼
可是這個方法我用最笨的,就是一個一個檢查所有 CheckBox,要是碰到有打勾的(比方說 C11 有打勾),就把所有的勾勾都先取消,再重新再幫 C11 打勾...

雖然想是這樣想,可是寫出來很失敗∼
(完全不能跑)
可不可以請高手指點一下呢??
謝謝...

====
function checkForm()
{
  if (eval('document.StartForm.C1').checked == true || 
      eval('document.StartForm.C2').checked == true ||
      eval('document.StartForm.C3').checked == true ||
      eval('document.StartForm.C4').checked == true ||
      eval('document.StartForm.C5').checked == true ||
      eval('document.StartForm.C11').checked == true 
      )
      
    {
     window.open('網頁 A') ;   
    }
    
    elseif (eval('document.StartForm.C6').checked == true ||
            eval('document.StartForm.C7').checked == true ||
            eval('document.StartForm.C8').checked == true ||
            eval('document.StartForm.C9').checked == true ||
            eval('document.StartForm.C10').checked == true
            )
     {
      window.open('網頁 B') ;       
     }
     
    elseif (eval('document.StartForm.C12').checked == true ||
            eval('document.StartForm.C13').checked == true ||
            eval('document.StartForm.C14').checked == true ||
            eval('document.StartForm.C15').checked == true ||
            eval('document.StartForm.C16').checked == true ||
            eval('document.StartForm.C17').checked == true ||
            eval('document.StartForm.C18').checked == true ||
            eval('document.StartForm.C19').checked == true ||
            eval('document.StartForm.C20').checked == true ||
            eval('document.StartForm.C21').checked == true ||
            eval('document.StartForm.C22').checked == true 
            )
     {
       window.open('網頁 C') ;        
     }        

     else 
     {
      window.alert('您沒有選擇唷!!');
      document.StartForm.C1.checked.focus()
     }          

}


function checkOrder()
{

  var i=1;
  var coNum=1;
  
  for (coNum = 1; coNum <= 22; coNum++)
  {   
   if (eval('document.StartForm.C'+ coNum).checked == true)
     {
        for (i = 1; i <= 22; i++)
        {
          eval('document.StartForm.C'+ i).checked = false;
        }
        
        eval('document.StartForm.C'+ coNum).checked = true;
      } 
  } 
}


function EnterButton()
{
 checkOrder()
 checkForm()
 
 return 0
}


網頁裡面有這行:
<input type="button" value="確定" name="B1" onclick="EnterButton()"><input type="reset" value="清除重選" name="B2"> 

本篇文章發表於2004-11-10 16:03
目前尚無任何回覆
   

回覆
如要回應,請先登入.