2014-11-04 123 views
0

我試圖把註冊頁面使用HTML,我想做驗證,如果複選框沒有被選中,我想禁用註冊按鈕,是不是像我在下面調用它?什麼是特定的HTML5代碼?如果未勾選複選框,如何禁用註冊按鈕?

EnableSubmit = function(val) 
{ 
    var sbmt = document.getElementById("Accept"); 

    if (val.checked == true) 
    { 
     sbmt.disabled = false; 
    } 
    else 
    { 
     sbmt.disabled = true; 
    } 
}  

這是我對按鈕的代碼和複選框UI

<div class="form-group"> 
    <a href="index.html" class="btn btn-primary pull-right" id="button">Sign Up!</a> 
    <label class="terms" id="terms"><input type="checkbox"> I agree with the <a href="terms-and-conditions.html">Terms and Conditions</a></label> 
</div> 

回答

0

這將做的事:

<input onclick="EnableSubmit(this)" type="checkbox"> 
0

HTML代碼

<div class="form-group"> 
    <a href="index.html" class="btn btn-primary pull-right" id="sbmt_btn" onclick="my_func()"> 
     Sign Up! 
    </a> 
    <label class="terms" id="terms"> 
      <input type="checkbox" id="chkbox_accept"> 
      I agree with the 
      <a href="terms-and-conditions.html">Terms and Conditions</a> 
    </label> 

JavaScript函數

function my_func(){ 
var chk_box = document.getElementById("chkbox_accept"); 
var submt_btn = document.getElementById("sbmt_btn"); 

if (chk_box.checked == true) 
{ 
    submt_btn.disabled = false; 
} 
else 
{ 
    submt_btn.disabled = true; 
} 
} 
+0

'val'沒有定義.. – Xlander 2014-11-04 11:22:32

+0

@Xlander我已經更新了答案。 – 2014-11-05 00:40:02

0

想必你在表單提交按鈕與「接受」的ID。您可以給它一個相同的值和名稱:

<input type="checkbox" onclick="this.form.Accept.disabled=!this.checked"> 

但是,這並不能保證在提交表單時檢查複選框。另外,如果提交按鈕默認處於禁用狀態,那麼沒有腳本的用戶可能無法提交表單。考慮讓它默認啓用並使用腳本禁用它。

1

var EnableSubmit = function(val) { 
 
    var lnk = document.getElementById("button"); 
 
    val ? lnk.classList.remove('disabled') : lnk.classList.add('disabled'); 
 
}; 
 

 
var isAgreed = function() { 
 
    return -1 === document.getElementById("button").className.split(" ").indexOf('disabled'); 
 
};
<div class="form-group"> 
 
    <a href="index.html" onclick="return isAgreed();" class="disabled btn btn-primary pull-right" id="button">Sign Up!</a> 
 
    <label class="terms" id="terms"> 
 
    <input type="checkbox" onchange='EnableSubmit(this.checked);'>I agree with the <a href="terms-and-conditions.html">Terms and Conditions</a> 
 
    </label> 
 
</div>

相關問題