【问题标题】:Stop form button from submit停止提交表单按钮
【发布时间】:2013-12-24 14:42:04
【问题描述】:

如果两个字段不相等,我正在尝试阻止提交 drupal 表单。我有两个字段,输入您的电子邮件并确认在允许表单提交之前两者都需要匹配的电子邮件。以下代码在 $(document).read(function() 调用中。我该怎么做?

  $('#webform-client-form-27 #edit-submitted-confirm-email-address').blur(function() {

  if ($('#edit-submitted-email-address').val() == $('#edit-submitted-confirm-email-address').val() ) {
    $('#edit-submitted-email-address').css('border', '1px solid' );
    $('#edit-submitted-email-address').css('border-color', '#848484 #c1c1c1 #e1e1e1' );
    $('#edit-submitted-confirm-email-address').css('border', '1px solid' );
    $('#edit-submitted-confirm-email-address').css('border-color', '#848484 #c1c1c1 #e1e1e1' );

  }
  else {
    $('#edit-submitted-email-address').css('border', '2px solid red');
    $('#edit-submitted-confirm-email-address').css('border', '2px solid red');
  }

});

【问题讨论】:

    标签: jquery forms drupal-7 submit


    【解决方案1】:

    其实很简单:

    $('#myForm').on('submit', function(){
        if ($('#theAddress').val() != $('#theConfirmation').val()) {
            return false;
        }
        return true;
    });
    

    或者如果你只有那些要检查的,你可以压缩它:

    $('#myForm').on('submit', function(){
        return $('#theAddress').val() == $('#theConfirmation').val();
    });
    

    为了详细说明,添加处理程序时使用返回值。如果您返回true,javascript 将继续并在submit 事件上提交表单。如果你返回false,它就会停止。

    【讨论】:

    • 这样做的问题是它不会让drupal检查剩余的值并运行它的常规检查。
    【解决方案2】:
    <form onsubmit="return validateInfoFunction()">
    <input type="text" id="email1"/>
    <input type="text" id="email2"/>
    <input type="submit"/>
     </form>
    <script type="text/javascript">
    function validateInfoFunction(){
    
      if(document.getElementById("email1").value == document.getElementById("email2").value)
      {
       return true;
      }
    else return false;
    }
    </script>
    

    在 onsubmit 事件中返回 false 将停止表单提交。希望这可以帮助。

    【讨论】:

      【解决方案3】:

      您可以通过匹配两个文本框的 $form_state 值直接使用您的 form_name_validate 函数执行此操作,如果值不匹配,您可以抛出 form_set_error 函数。

      【讨论】:

        猜你喜欢
        • 2018-09-14
        • 2020-11-24
        • 2015-07-07
        • 1970-01-01
        • 2017-10-10
        • 2016-02-06
        • 1970-01-01
        • 1970-01-01
        • 2013-12-31
        相关资源
        最近更新 更多