2

我确定我在某个地方遗漏了一些东西,但我看不到在哪里。我正在尝试使用 jQuery 验证脚本,但不断收到此错误。我很确定所有文件都在正确的位置等。这是在头:

<script src="scripts/jquery.min.js"></script>
<script src="scripts/jquery.validate.min.js"></script>
<script>
$(document).ready(function() {
    $('#form1').validate();
}); // end ready
</script>

那么我的表格如下:

  <p>
    <label for="name">Your name:
    </label><br />
    <input name="name" type="text" class="required" title="Please enter your name." id="name" maxlength="80" />
  </p>

  <p>
    <label for="email">Your email address:</label><br /><input name="email" type="text" class="required email" title="Please enter a valid email address." id="email" maxlength="100" />
  </p>

  <p>
    <label for="phone">Your contact number:</label><br />
    <input name="phone" type="text" class="required" title="Please enter your phone number" id="phone" maxlength="50" />
  </p>

  <p>
    <label for="message">Message:<br />
    </label>
    <textarea name="message" id="message" cols="50" rows="5"></textarea>
  </p>
  <p>
    <input name="Submit" type="submit" class="form" id="Submit" value="Submit" style="width:100px" />
  </p>

</form>

谢谢你的帮助!

4

2 回答 2

4

我刚刚遇到了这个问题,发现了两个导致此问题的问题:

我不小心在 HTML 文件的末尾添加了 jquery 引用以加快加载速度。将其移到我正在执行 .validate() 调用的上方解决了该问题。例子:

<script>
   $(document).ready(function(){
      $('#commentForm').validate();
   });
</script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript" src="http://jzaefferer.github.com/jquery-validation/jquery.validate.js"></script>

我也有一个问题,我不小心加载了 jquery 两次,一次是在验证加载之后。例子:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript" src="http://jzaefferer.github.com/jquery-validation/jquery.validate.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script>
   $(document).ready(function(){
      $('#commentForm').validate();
   });
</script>

这是我需要的:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript" src="http://jzaefferer.github.com/jquery-validation/jquery.validate.js"></script>
<script>
   $(document).ready(function(){
      $('#commentForm').validate();
   });
</script>
于 2013-02-03T23:59:22.500 回答
1

我在 Rails 项目中遇到了同样的问题。

删除文件夹后,我的问题得到了解决public/assets,因为这导致项目多次加载 jquery 库(原始库和预编译库)。

于 2013-03-31T20:04:48.077 回答