有人可以告诉我我做错了什么,当我尝试提交表格而不填写必填字段时,我的提示不会出现。
当我只为#34; name"添加一个警报脚本时它会工作,我已经尝试将更多参数,如电子邮件电话和名称添加到一个验证脚本,但似乎没有用。
<script type="text/javascript">
function validateName() {
var x = document.forms["form"]["Name"].value;
if (x == null || x == "") {
alert("your name needs to be entered");
return false;
}
}
</script>
<script type="text/javascript">
function validateEmail() {
var x = document.forms["form"]["Email"].value;
if (x == null || x == "") {
alert("your email needs to be entered");
return false;
}
}
</script>
<script type="text/javascript">
function validatePhone() {
var x = document.forms["form"]["Phone"].value;
if (x == null || x == "") {
alert("your phone number needs to be entered");
return false;
}
}
</script>
<script type="text/javascript">
function validateComments() {
var x = document.forms["form"]["comments"].value;
if (x == null || x == "") {
alert("please enter some comments");
return false;
}
}
</script>
<script type="text/javascript">
function validateMail(email) {
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)| (".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA- Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}
</script>
<form action="formmail.php" method="get" name= "form" onsubmit="return validateForm()" method="post">
<p> name </p>
<input type="text" name="Name" min="2"/>
<br>
<p>email</p>
<input type="email" name="Email" min="2"/>
<br>
<p> phone number</p>
<input type="tel" name="Phone"/>
<br>
<h2> Team </h2>
<p>Select your team<br/>
</p>
<select multiple name="interests">
<option value="Adults">Adults</option>
<option value="Under12s" >Under 12s</option>
<option value="under6s" >Under 6s</option>
</select>
<h2>Are you an existing member? </h2>
<p>
<input type="radio" name="roomRating" value="excellent">yes<br/>
<input type="radio" name="roomRating" value="good">no<br/>
</p>
<p> comments </p>
<textarea name="comments" rows="5" cols="25" id="comments"> </textarea>
<p>
<input onclick="myFunction" type="submit" name="submit" value="Submit"/>
</p>
</form>
答案 0 :(得分:3)
您不能拥有多个具有相同名称validateForm
的函数,只有最后一个函数会持久存在。您可以将它们组合到单个功能中,但是,使用您当前的方法,只会生成第一个警报。也就是说,只会显示第一个错误。