问题描述
我有两个数字20和0。
我的代码应该基于输入和提交的两个数字之一显示一个警报框。但是,当我输入两个数字之一时,单击“提交”就不会发生任何事情。
不确定表单动作属性是否是原因,但是它是一个名为compact.html的单页html文档,因此是动作属性的值。
<!DOCTYPE html>
<html>
<head>
<title>Check PIN</title>
<script type="text/javascript">
function userCode {
if (document.registration.pincode.value == "20") {
alert("Congrats,you passed!");
document.registration.pincode.focus();
return false;
}
if (document.registration.pincode.value =="0") {
alert("Sorry,you failed!");
document.registration.pincode.focus();
return false;
}
return (true);
}
</script>
</head>
<body>
<form action="compact.html" name="registration" onsubmit = "return(userCode());">
<label>Please enter your PIN:</label><br>
<br>
<input type="text" name="pincode"><br>
<br>
<input type="button" name="Submit" value="Submit">
</form>
</body>
</html>
解决方法
您可以使用html的onclick事件来触发JS函数;为此,需要更改以下行:
<input type="button" name="Submit" value="Submit">
具有以下内容:
<input type="button" name="Submit" value="Submit" onclick="userCode()">
注意:您始终可以在浏览器控制台上调试代码(按功能键-f12)