SchoolI有一个jquery脚本,用于验证表单中的电子邮件字段。此脚本确保表单仅接受以特定域结尾的电子邮件地址。但是,我的表单中有另一个字段,用户可以识别他们是员工,教师还是其他人员。如果他们选择其他,我想放弃电子邮件验证并让用户输入任何有效的电子邮件地址。这是我的一些相关代码。非常感谢任何帮助。
<script>
$.validator.addMethod(
"regex",
function(value, element, regexp) {
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
}, "<span class='error2'>You must use your School email address.</span>"
);
$().ready(function() {
// validate the comment form when it is submitted
// validate signup form on keyup and submit
$("#helpdeskform").validate({
rules: {
email: {
required: true,
email: true,
regex: '^[a-zA-Z0-9_.+-]+@domain.edu|student.domain.edu+$'
},
agree: "required"
},
messages: {
email: {
required: "Please enter a valid email address",
},
agree: "Please accept our policy"
}
});
</script>
<form method="post" id="helpdeskform" name="helpdeskform" action="tracking.injector2.php">
<table width="760" border="0" style="margin: 0 20px 0 20px;">
<tr>
<td><label for="user">Choose One:</label></td>
<td>
<select name="user" id="user">
<option value="student">Student</option>
<option value="staff">Staff</option>
<option value="faculty">Faculty</option>
<option value="other">Other</option>
</select></td>
</tr>
</table>
<input type="submit" name= 'add' value="Submit" />
答案 0 :(得分:0)
您可以在表单的提交事件上放置一个监听器,然后进行所需的验证,如果它们正常,则让表单自行提交或中断提交。
$('#helpdeskform').submit(function() {
if($('#user').val() != 'other') {
//Invalidate form and then cancel the submit
return false;
}
});