我收到“预期的对象”的错误 - 错误指向第一个If ...从我读到的关于复选框的所有内容(复选框对我来说永远不起作用)以及我读到的关于多个条件的内容,这是对的吗?即使它不是......
var lucy = window.document.alice
if (lucy.ch1.checked != "true" && lucy.ch2.checked != "true" && lucy.ch3.checked != "true" && lucy.ch4.checked != "true")
{
alert('Atleast one box must be checked');
}
if (lucy.skeletor.value = "no")
{
alert('Default Option is not a valid selection.');
}
答案 0 :(得分:3)
您不需要lucy.ch1.checked != "true"
部分。只要说一下(!lucy.ch1.checked && !lucy.ch2.checked && ...
)。此外,使用if
,而不是If
,javascript区分大小写。您的代码是失败的保证,所以也许您希望它将其重写为:
var lucy = document.alice; //a form of some kind?
if (!lucy.ch1.checked && !lucy.ch2.checked
&& !lucy.ch3.checked && !lucy.ch4.checked)
{
alert('At least one box must be checked');
}
if (lucy.skeletor.value === "no")
{
alert('Default Option is not a valid selection.');
}
答案 1 :(得分:0)
尝试
if (!(lucy.ch1.checked || lucy.ch2.checked || lucy.ch3.checked))
答案 2 :(得分:0)
Javascript区分大小写 - 您需要使用if()
更新:这是我将如何验证表单(我不太可能称之为obejct lucy,但是你在这里):
function validate(lucy) {
if (!lucy.ch1.checked && !lucy.ch2.checked && !lucy.ch3.checked && !lucy.ch4.checked) {
alert('At least one box must be checked');
return false;
}
if (lucy.skeletor.value = "no") {
alert('Default Option is not a valid selection.');
return false;
}
return true;
}
<form onsubmit="return validate(this)">
答案 3 :(得分:0)
这是因为你有“”真的。在这种情况下,true不是一个字符串,它是一个布尔值,你可以写入true。 通过使用KooiInc的答案,你可以使它变得更加简单。