繁体   English   中英

禁用按钮仍提交表单

[英]Disabled button still submits form

单击一次后,“保存”按钮将被禁用,但是如果再次单击它,它将重新提交表单。 我猜它永远不会到达if语句的第一部分。 任何帮助,将不胜感激:

-block extra_scripts

:javascript

  function check_button(){ 
    var saveButtons = $('a[name=saveButton]');
    if (saveButtons.is(':disabled')) { 
      alert("disabled");
      return false;
    }
    else{
      $("#main_form").submit();
      saveButtons.attr("disabled", true);
    }
  }

-block main

  .btn-group.pull-right
    %a.btn.icon-save.btn-callout{
      :name => "saveButton",
      :id => "saveButton",
      :type => "submit",
      :onclick => "check_button()"
      }
      Save

仅需注意,saveButtons包含两个按钮。 一个在页面顶部,一个在底部。

尝试saveButtons.attr("disabled", "disabled");

我想只有输入元素可以:disabled (请参阅此处

您可以尝试if (saveButtons.attr("disabled"))

我在我的身上用过这个: https : //stackoverflow.com/a/22557155/5475948

当然,我还有一些其他脚本检查我的元素以删除禁用的类。

<form method="post" id="valid">
    <input type="hidden" id="selected-product" name="selected-product" value="">
    <input type="hidden" id="step" name="step" value="1">
    <button type="submit" id="submitter" class="btn btn-green uppercase disabled">Valider</button>
</form>

<script>
//dom ready handler
jQuery(function ($) {
    //form submit handler
    $('#valid').submit(function (e) {
        //check atleat 1 checkbox is checked
        if ($('#submitter').hasClass('disabled')) {
            //prevent the default form submit if it is not checked
            e.preventDefault();
        }
    })
})
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM