2010-04-05 69 views
0

我试图验证使用jQuery的html页面,但没有任何反应。这是一个简单的页面,但文本框未经验证。验证使用jQuery

这是代码:

<link rel="stylesheet" type="text/css" href="style.css" /> 
<script type="text/javascript" src="~/jquery.js/"></script> 
<script type="text/javascript" src="~/jquery-validate/jquery.validate.js/"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
    var validator = $("#submitForm").validate({ 
      debug: true, 
      rules: { 
       author: "required", 
       quote: "required" 
      }, 
      messages: { 
       author: "Name of Author required" 
       quote: "Please enter Quote" 
      }, 
      errorPlacement: function(error, element) { 
       error.appendTo(element.parent().top()); 
      } 
    ); 
    }); 
    </script> 

<body> 

<div class="container"> 
<div class="center_div"> 
<h2>Submit Your Quote</h2> 
<fieldset> 
<form id="submitForm" action="qinsert.php" method="post"> 
<div class="error" style="display:none"></div> 
<div class="field"> 
<label>Author: </label> 
<input name="author" type="text" class="required" minLength=3> 
<span class="error"></span> 
</div><br /> 
<div class="field"> 
<label>Quote: </label> 
<textarea name="quote" cols=22 class="required" minLength=5></textarea> 
<span class="error"></span> 
<br /> 
</div> 
<input id="button1" type="submit" value="Submit" class="submit" /><br /> 
<input id="button2" type="reset" value="Reset" /> 
</form> 
</fieldset> 
</div> 
</div> 

什么是错的代码?谢谢!

回答

1

只是一个快速的一瞥,它看起来像你缺少在JavaScript关闭“}”。我认为你没有关闭验证({正确。尝试在你的前面添加}大括号);在errorPlacement函数之后。

$(document).ready(function(){ 
var validator = $("#submitForm").validate({ 
     debug: true, 
     rules: { 
      author: "required", 
      quote: "required" 
     }, 
     messages: { 
      author: "Name of Author required" 
      quote: "Please enter Quote" 
     }, 
     errorPlacement: function(error, element) { 
      error.appendTo(element.parent().top()); 
     } 
    }); 
    }); 
+0

请参阅您的回复帖子的评论以获取脚本标记的进一步说明src属性 – Tommy 2010-04-05 23:07:51

1

我以前没有使用jQuery的验证插件,但显然是有缺失的逗号这里:

messages: 
{ 
      author: "Name of Author required", 
      quote: "Please enter Quote" 
}, 

没有这个插件,手工,所以我现在还不能得到一个样本运行的代码。

我个人觉得验证的声明方式更吸引我的,这意味着,而不是直接把验证要求到您的JavaScript代码,你可以声明其标记在HTML里面。然后,验证引擎会检查每个必填字段,等等

如果这听起来合理的给你,那么我建议另一个验证插件: jQuery inline validation

0

检查路径到您的jQuery库。他们在名为~的目录中,并且后缀/似乎不太可能。如果他们在同一个目录中,则正确的语法是:

<script type="text/javascript" src="jquery.js"></script>