[英]basic JavaScript form validation
我正在测试,习惯了表格。 我试图让JavaScript检查的值,如果未填写,则在它旁边显示一条小消息。足够简单了吧?
<script>
function ValidateForm() {
var x = document.forms["Form"]["fName"].value;
If (x==null || x=="") {
document.getElementById("FN").innerHTML = "This field must be filled in"; }
}
</script>
<body>
<form name="Form" onload="ValidateForm()">
First Name: <input type="text" name="fName"> <p id="FN"></p>
Last Name: <input type="text" name="sName"> <p id="SN"></p>
</form>
</body>
不幸的是,参数“ FN”和“ SN”在加载时仍然为空。 我知道这不是实际的事情,因为验证不会刷新,并且仅在字段绑定为空时才在onload上运行,但是稍后我将添加废话,因为我已经知道如何使用。
我该如何工作?
可能是因为您将if中的字母“ I”大写了。
If (x==null || x=="") {
应该
if (x==null || x=="") {
只需使用必填属性:
<form name="Form">
First Name: <input type="text" name="fName" required> <p id="FN"></p>
Last Name: <input type="text" name="sName" required> <p id="SN"></p>
</form>
http://html5doctor.com/html5-forms-introduction-and-new-attributes/#required
聪明地工作,不费力;)
由于这没有用...
<html>
<head>
<script>
function ValidateForm() {
var x = document.forms["Form"]["fName"].value;
if (x === null || x === "") {
document.getElementById("FN").innerHTML = "This field must be filled in"; }
}
</script>
</head>
<body onload="ValidateForm()">
<form name="Form">
First Name: <input type="text" name="fName"> <p id="FN"></p>
Last Name: <input type="text" name="sName"> <p id="SN"></p>
</form>
</body>
</html>
第一个问题是一个简单的错误, If
应该是if
:
if (x==null || x=="") {
下一个问题是<form>
标记不支持onload
事件,因此该功能将无法运行。 而是在加载DOM或<form>
之后执行此操作:
<form name="Form">
First Name: <input type="text" name="fName"> <p id="FN"></p>
Last Name: <input type="text" name="sName"> <p id="SN"></p>
</form>
<script>ValidateForm();</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.