jQuery表单验证无法在IE中运行

时间:2011-10-06 15:30:26

标签: jquery html

有人可以告诉我为什么这种表单验证在Firefox中而不是在Internet Explorer中有效吗? 我需要让它适用于所有浏览器。

目前。该表单正在资源管理器上提交,未经验证。

感谢您的协助。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
  <head>
  <title>Simple Form Validation</title>
  <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
  <script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js"></script>

  <script type="text/javascript">
    $(document).ready(function() {
      $("#form2").validate({
        rules: {
          name: "required",// simple rule, converted to {required:true}
          email: {// compound rule
          required: true,
          email: true
        },
        url: {
          url: true
        },
        comment: {
          required: true
        }
        },
        messages: {
          comment: "Please enter a comment.",
          name: "upgrade",
          email: "valid email only"
        }
      });
    });
  </script>

  </head>


  <body>
    <form id="form2" method="post" action=""><br />
      Name * <input type="text" name="name" /> <br />
      E-Mail *<input type="text" name="email" /> <br />

      URL <input type="text" name="url" /> <br />
      Your comment * <textarea name="comment" ></textarea> <br />
      <input class="submit" type="submit" value="Submit"> 
    </form>
  </body>
</html>

2 个答案:

答案 0 :(得分:0)

试试这个,我认为你的语法有点偏。

$(document).ready(function() {
      $("#form2").validate({
        rules: {
          name: "required",// simple rule, converted to {required:true}
          email: {// compound rule
              required: true,
              email: true
          },
          url: {
             url: true
          },
          comment: {
             required: true
          }
        },
        messages: {
          comment: "Please enter a comment.",
          name: "upgrade",
          email: "insert here"
        }
      });
    });

答案 1 :(得分:0)

您的jQuery Validation Plugin(jquery.validate.js)可能需要更新。我使用的是1.7版本,遇到了与您遇到的问题相同的问题。验证在Chrome中运行良好,但在IE7和IE8中没有做任何事情(即没有出现验证错误)。

尝试升级到最新版本的插件,看它是否有帮助。

截至目前,最新版本可以从以下网址下载: http://jquery.bassistance.de/validate/jquery-validation-1.11.1.zip

参考: http://blog.degree.no/2012/01/jquery-validation-not-working-in-ie7-and-ie8/