0

我正在将一个基本站点与 Galleria 库、隐藏/显示和验证表单放在一起。当我加载 Galleria 脚本时,对我的基本反馈表单的验证失败。

当我还将 Galleria 脚本加载到页面中时,什么原因可能会阻止 JQuery 验证脚本运行?验证在 Galleria 未加载时工作正常,但在加载时失败。现场直播:http: //lucidnetdesigns.com/invidia/这是当前的导入和脚本:

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript" src="scripts/jquery.validate.js"></script>
<script type="text/javascript" src="galleria/galleria-1.2.7.min.js"></script>
<script type="text/javascript" src="http://ui.jquery.com/latest/ui/effects.core.js"></script>
<script type="text/javascript" src="http://ui.jquery.com/latest/ui/effects.slide.js"></script>

<script type="text/javascript">

   Galleria.loadTheme('galleria/themes/twelve/galleria.twelve.min.js');
    Galleria.run('#galleria', {
    fullscreenCrop: 'false',
    autoplay: 3000,
    imageCrop: true
});

            $(document).ready(function() {
                $('#content_salon').hide();

                $('a#show_content_salon').click(function () {
                    $('#content_salon').slideToggle('slow');
                    return false;
                });
            });

            $(document).ready(function () {
                $('#content_services').hide();

                $('a#show_content_services').click(function () {
                    $('#content_services').slideToggle('slow');
                    return false;
                });

            });

            $(document).ready(function () {
                $('#content_contactus').ahow();

                $('a#show_content_contactus').click(function () {
                    $('#content_contactus').slideToggle('slow');
                    return false;
                });
            });


$(document).ready(function(){
    $("#form1").validate({

    rules: 

    {

      email1: "required",
       email2: {
              equalTo: "#email1" },

      phone: {
        minlength: 10,
        maxlength: 10
      },

      fullname: {
        minlength: 2
      },


    },

    messages: { 

    name: "Please enter your full name.",
    email1: "Please enter a valid email.",
    phone: "Phone number must be 10 characters (include area code).",
    },

    errorPlacement: function(error, element) { 
            error.appendTo( element.parent() ); 
        }
  });

});
  </script>
4

1 回答 1

1

我在您的页面上看到很多拼写错误。

根据您的 OP,这些是您的rules...

rules:  {
      email1: "required",
      email2: {
          equalTo: "#email1" 
      },
      phone: {
          minlength: 10,
          maxlength: 10
      },
      fullname: {  // <-- no such field defined
          minlength: 2
      }
},
messages: { 
    name: "Please enter your full name.",  // <-- no such field or rule
    email1: "Please enter a valid email.",
    phone: "Phone number must be 10 characters (include area code).",
},

但是,根据您的页面,没有名为fullname. 您的实际 HTML 是这样的:

<input name="firstname" ....

在您的messages部分中,您定义了一条消息,name但您的表单中没有带有 的字段name="name",也没有任何名为 的规则name

您的验证代码正在运行:http: //jsfiddle.net/zPQJb/

旁注:当您已经在 contains 中指定复合规则时,没有 理由class="require"在字段上使用。这是多余的。input.validate()required


您页面上的第一个错误:

"$('#content_contactus').ahow is not a function"

ahow应该是show

您需要解决此问题以及页面上的许多其他 JavaScript 错误(似乎是由许多拼写错误引起的),然后才能期望任何剩余的 JavaScript 正常运行。

于 2013-02-18T20:13:50.620 回答