function checkforinput() {
var valid = true;
var date = document.getElementById('date');
var time = document.getElementById('time');
var checkbox = document.getElementById('checkbox-1-1');
if (date.value == "" && time.value == "" && checkbox.checked == false || date.value !== "undefined" && time.value !== "undefined" && checkbox.checked) {
document.getElementById('errMsg10').innerHTML = "*Please Schedule in Advance or Select Now";
valid = false;
} else {
document.getElementById('errMsg10').innerHTML = "";
}
return valid;
}
的HTML:这个if/else语句的正确格式是什么?
<input id="date" class="datentime" type="date" name="date" min="2015-07-18" max="2015-12-31" value="1"/>
<input id="time" class="datentime" type="time" name="time" value="1"/><br>
<h2 class="bottomOpt">OR</h2><span id="errMsg10"></span>
<h1 class="bottomOpt"><span class="adnow">Now</span><br><span id="asap">*We'll send help ASAP.</span></h1>
<input type="hidden" name="now" value="0"/>
<input type="checkbox" id="checkbox-1-1" class="regular-checkbox" name="now" value="1" /><label for="checkbox-1-1"></label>
<input type="hidden" name="status" value="3"/>
在上面的代码,我所要做的是要求输入日期,时间和复选框不能是空的,但他们不能全部选择无论是。它可以是用户选中复选框或选择日期和时间。
if/else语句的第一部分似乎工作正常,但条件中的||
之后的代码似乎是错误的。如果选择日期和时间,但取消选中复选框,代码将起作用。如果选中复选框,但未选择日期和时间,则代码不起作用。它仍然显示errMsg10
。
您需要括号......围绕需要一起检查的部分。 – epascarello