【问题标题】:Form submit button not working in Google Chrome (jQuery Validate)表单提交按钮在 Google Chrome 中不起作用(jQuery 验证)
【发布时间】:2011-09-12 17:14:17
【问题描述】:

我在演示页面上使用了 jQuery Validate 插件,但由于某种原因,提交按钮在 Google Chrome 中不起作用。我怀疑它与自动填充功能有关,但我不确定:

几天来一直在努力解决这个问题。

这是链接:Contact Form

这是 jQuery 代码的 sn-p。文件中使用的所有js都可以在:combined js code - 初始化代码在底部。

$(function(){
/* ----- Validation ----- */
$("#contactform").validate({
    rules: {
        email: {
            required: true,
            email: true
        },
        name: "required",
        last: "required",
        phone: {
            required: true,
            phoneUS: true,
            minlength: 10,
            maxlength: 14
        },
        city: "required",
        state: "required",
        zip: {
            required: true,
            minlength: 5,
            maxlength: 10
        },
        testimonial: {
            required: true,
            minlength: 5
        },
        security_code: "required"
    },

    submitHandler: function(form) {
        form.submit();
        return false;
    },

    messages: {
        email: "<span class='errors'>Please enter a valid email address</span>",
        name: {
            required: "<span class='errors'>Please enter your first name</span>"
        },
        last: {
            required: "<span class='errors'>Please enter your last name</span>"
        },
        phone: {
            required: "<span class='errors'>Please enter your phone number</span>",
            phoneUS: "<span class='errors'>Please enter a valid phone number</span>",
            minlength: "<span class='errors'>Phone number too short</span>",
            maxlength: "<span class='errors'>Phone number too long</span>"
        },
        city: "<span class='errors'>Please enter your city</span>",
        state: "<span class='errors'>Please choose your state</span>",
        zip: {
            required: "<span class='errors'>Please enter your zip code</span>",
            minlength: "<span class='errors'>Zip Code must be more than 4 characters</span>",
            maxlength: "<span class='errors'>Zip Code must be less than 11 characters</span>"
        },
        testimonial: {
            required: "<span class='errors'>Please enter your testimonial</span>",
            minlength: "<span class='errors'>Testimonial must be more than 5 characters</span>"
        },
        security_code: "<span class='errors'>This field is required</span>"
    },

    errorPlacement: function(error, element) {
        if (element.attr('id') != 'security_code_input') {
            error.insertAfter(element);
        } else {
            error.insertAfter($('#sec_code_msg'));
        }
    }
});


/* ----- Input Masking ----- */
$("#phone").mask("(999) 999-9999");

});

【问题讨论】:

    标签: javascript jquery google-chrome jquery-validate form-submit


    【解决方案1】:
    <input name="submit" type="submit" value="Send Now">
    

    通过这一行,您已经覆盖了表单的“提交”功能并将其替换为按钮。

    form.submit = 这个按钮。不是事件处理程序。

    修复:将按钮命名为其他名称。

    【讨论】:

      【解决方案2】:

      我怀疑表单操作有问题....??

      <form action="/contact_form_10-6-2011/contact.php#contactformWrapper" method="post" name="form1" id="contactform">
      

      不知道为什么,但我发现它困扰着我。

      您是否也在使用相同的 php 文件来读取和解析输入??类似 Using PHP_SELF in the action field of a form

      【讨论】:

      • 尝试仅使用锚点,但仍然无法正常工作。我正在使用:
      猜你喜欢
      • 2018-02-14
      • 1970-01-01
      • 2018-03-09
      • 1970-01-01
      • 2017-04-28
      • 1970-01-01
      • 2012-07-13
      • 2014-07-03
      • 2019-06-06
      相关资源
      最近更新 更多