使用文本框值进行Jquery文本框验证

时间:2012-06-22 21:01:40

标签: jquery validation onblur onfocus

我在表单中有几个文本框,其中包含值。当用户点击文本框时,我使用onfocus和onblur来清除值。我也试图验证文本框,但由于框中已有值,验证不起作用。有没有办法可以让验证忽略这个值(即名字)?

谢谢!

<script type="text/javascript">

 var j = jQuery.noConflict();

    j(document).ready(function() {


        j("#ContactUs_Solutions_EN2012").validate({

        rules: {
 realname: "required",
 email: {
   required: true,
   email: true
 }
 },
messages: {
 realname: "<p style='color:red; font-size:12px; margin:-10px 0 0px 0; padding:10px 0px 10px 10px ; text-align:right;'>Please specify your name</p>",
 email: {
   required: "<p style='color:red; font-size:10px; margin:-10px 0 0px 0; padding:0; text-align:right;'>We need your email address to contact you</p>",
   email: "Your email address must be in the format of name@domain.com"
  }
}
        });
    });
</script>

<input style="WIDTH: 275px" id="First_Name" name="realname" class="required" size="25" minlength="2" value="First Name" >

2 个答案:

答案 0 :(得分:0)

您可以创建一个全局布尔变量并将其初始化为false。 在“onfocus”函数中,只需将布尔值更改为true即可。 仅当您的布尔变量为真时才显示错误消息。

或者,您可以使用HTML 5属性“占位符”

这实际上是你的焦点部分而没有在文本框中实际放置一个值。

有关详细信息,请参阅http://www.w3schools.com/html5/att_input_placeholder.asp

答案 1 :(得分:0)

由于您在文本框中设置了值,因此验证无效。将值更改为占位符。您不需要使用onfocus和onblur来清除值,因为占位符会为您完成。

<input style="WIDTH: 275px" id="First_Name" name="realname" class="required" size="25" minlength="2" placeholder="First Name" >