2017-07-20 28 views
0

我有兩個不同的名稱和ID複選框,我希望用戶至少檢查其中一個,如果不是該按鈕將禁用!但是,如果他們中的一個檢查將進行到另一個文件如何驗證javascript中的兩個複選框

function validate(){ 
 
var time12 = document.getElementById("time12").checked; 
 
var time24 = document.getElementById("time24").checked; 
 

 
if((time12 == "") && (time24 == "")) 
 
{ 
 
\t alert("Choose your hour rate"); 
 
\t return false; 
 
} 
 
\t return true; 
 
}

 

 
<input id="time12" type="checkbox" name="time12" value="12" />12hours 
 
<input id="time24" type="checkbox" name="time24" value="24" />24hours

但你輸入你的恨評論之前,我希望你能告訴我已經搜索一下吧,我沒有像這樣的問題!

或建議我等方式預先感謝您

+0

什麼按鈕應該得到停用?我只看到兩個複選框。我看到驗證方法,但沒有觸發它。 –

+0

即時對不起,我太遲沒有意識到,我忘了添加我的按鈕... shimo

+0

你在我之前編輯我的問題,所以我不能改變我的問題哈哈抱歉:( – shimo

回答

0

只需用函數添加onclick()

function validate(){ 
 
var time12 = document.getElementById("time12").checked; 
 
var time24 = document.getElementById("time24").checked; 
 

 
if((time12 == "") && (time24 == "")) 
 
{ 
 
\t alert("Choose your hour rate"); 
 
\t return false; 
 
} 
 
\t return true; 
 
}
<input id="time12" type="checkbox" name="time12" value="12" />12hours 
 
<input id="time24" type="checkbox" name="time24" value="24" />24hours 
 

 
<button onclick="validate()" >submit</button>

+0

據後,一些按鈕應該得到禁用 –

+0

謝謝你的答案.. !!我不能想象這是唯一我需要做的...... – shimo

+0

但有可能把這個在我的PHP文件? ,因爲我有兩個數字屬性,如果這兩個數字有一個相同的變量,我想禁用 shimo

0

爲了使這項工作,你需要一個事件處理程序附加到change事件的複選框。然後,您可以根據選中元素的狀態來啓用/禁用該按鈕。試試這個:

$('.hours').change(function() { 
 
    $('#btn').prop('disabled', !$('.hours:checked').length); 
 
}).change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<label> 
 
    <input id="time12" type="checkbox" name="time12" value="12" class="hours" /> 
 
    12hours 
 
</label> 
 
<label> 
 
    <input id="time24" type="checkbox" name="time24" value="24" class="hours" /> 
 
    24hours 
 
</label> 
 
<input type="submit" value="FORM 3" name="btn_form3" id="btn" />

注意,我添加了一個類的hours的複選框和#btn到按鈕的ID,只是爲了使選擇的元素更容易。

+0

謝謝:)爲您的努力 – shimo

0

你想要做的是每次選中一個複選框,你想看看是否兩個複選框都被選中。

要做到這一點它像

$("input:checkbox").on("change", function(){ 
    var checked = false; 
    if($("#input1).prop("checked")) 
     checked = true; 
    if($("#input2).prop("checked")) 
     checked = true; 
    if(!checked) 
     button.prop("disabled",true); 
} 
+0

謝謝:)您的努力 – shimo

0

見這個例子:https://codepen.io/anon/pen/bRXMpx

<script> 
function validate(){ 
var time12 = document.getElementById("time12").checked; 
var time24 = document.getElementById("time24").checked; 

if((time12 == "") && (time24 == "")) 
{ 
    document.getElementById("btn").disabled = true; 
    alert("Choose your hour rate"); 
    return false; 
} 
else 
document.getElementById("btn").disabled = false; 
    return true; 
} 
</script> 
<html> 
<input id="time12" type="checkbox" onclick="validate()" name="time12" value="12" />12hours 
<input id="time24" type="checkbox" onclick="validate()" name="time24" value="24" />24hours 
<input type="submit" id="btn" value="FORM 3" onclick="validate()" name="btn_form3" > 
</html>