【发布时间】:2012-02-15 17:20:58
【问题描述】:
提前感谢您提供的任何帮助。
我正在使用 jquery validate 插件编写一个简单的表单。
我的前两个字段是姓名和电子邮件,这两个都是必需的。
我的第三个字段是电话号码,但它是可选的。
在每个字段中,我在文本框中都有初始值(例如,在此处输入您的姓名,在此处输入您的电话,在此处输入您的电子邮件)
我已经添加了元素,所以如果该字段没有被更改,它将返回错误消息。
我的问题是我遇到以下问题
1) 使用 jquery 验证电话号码 2) 如果不需要,则验证电话号码框,但如果用户没有输入任何内容并保留默认值,则不会引发错误
这是我的 jquery 代码
<script>
$(document).ready(function(){
$.validator.addMethod(
'noPlaceholder', function (value, element) {
return value !== element.defaultValue;
}, 'Please enter a value.'
);
$("#drform").validate({
rules: {
name: "required",
email: "required email",
},
messages: {
name: "Enter your name",
email: "Enter your primary email address",
},
category: {
notEqual: "Enter Your Name Here...",
notEqual: "Enter Your Email Here..."
},
errorPlacement: function (error, element) {
error.insertBefore(element.prev());
element.parent().addClass('error');
}
});
});
</script>
这是我的表单代码
<div class="is-selection3">
<div style="width: 200px;">
<div class="errormsg"></div>
<input name="name" type="text" size="30" class="is-input noPlaceholder" id="name" onclick="this.value='';" onfocus="this.select()" onblur="this.value=!this.value?'Enter Your Name Here...':this.value;" value="Enter Your Name Here..." ><br>
<input name="email" type="text" size="30" class="is-input" id="email" onclick="this.value='';" onfocus="this.select()" onblur="this.value=!this.value?'Enter Your Email Here...':this.value;" value="Enter Your Email Here..."><BR>
<input name="mobile" type="text" size="30" class="is-input mobile" id="mobile" onclick="this.value='';" onfocus="this.select()" onblur="this.value=!this.value?'Enter Your Phone Number Here...':this.value;" value="Enter Your Phone Number Here...">
<BR>
<center><input type="submit" name="button" id="button" value="Submit" /></center>
</div>
关于我如何验证默认值是否不存在但也不需要它的任何想法?
【问题讨论】:
标签: jquery validation