2012-02-15 56 views
0

非常感谢您提供任何帮助。JQuery Valdiation - 不需要但验证

我写使用jQuery验证插件的简单形式。

我的头两个字段是姓名和电子邮件,这些都是必需的。

我的第三个领域是一个电话号码,但是是可选的。

在每场我都在文本框(例如这里输入你的名字,在这里输入你的手机,在这里输入你的电子邮件)的初始值

我已经加入的元素,因此如果该字段没有改变,它将返回错误消息。

我的问题是我使用jQuery的 2)验证电话号码框中,如果它不是需要具有以下

1)电话号码验证问题,但如果用户犯规键入任何内容,叶不扔一个错误它的默认值

这里是我的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> 

上如果默认是不存在的,我可以怎么验证的任何想法,但没有把它也需要?

回答

0

小费...尽量不要使用“ONEVENT”属性,使用JavaScript编写的文件的JavaScript动作。

关于你的问题,自HTML5出现以后,你可以使用placholder和requeried属性,并添加一个jQuery插件来处理不支持这些属性的浏览器。

一些插件这些属性:

GitHub - Mathias Byens - jQuery Placeholder Plugin

GitHub - Daniel Stocks - jQuery Placeholder Plugin

Webcloud - jQuery Placeholder Plugin

Ilia Draznin - jQuery Placeholder Plugin

GetHiFi - jQuery Handler to required attribute

和U希望与输入celphone数究竟是什么面具输入的输入插件:]

DigitalBush - Masked Input Plugin

Webappers - jQuery Masked Input Plugin

Conetrees - jQuery Masked Input Plugin