Google chrome 禁用提交按钮将停止chrome/IE8中的请求

Google chrome 禁用提交按钮将停止chrome/IE8中的请求,google-chrome,internet-explorer-8,jquery-attributes,Google Chrome,Internet Explorer 8,Jquery Attributes,我有一个简单的表单,有三个四个输入字段和一个提交按钮 要实现的功能:单击“提交”按钮时,应禁用“提交”按钮,以便不能执行其他单击按钮。我无法隐藏按钮 现在,当我使用jquery/javascript禁用提交按钮时,请求也被禁用&表单没有在CHROME/IE8中发布 有什么解决办法吗 编辑: 代码: $('#submit').attr('disabled',true);或$('#submit').prop('disabled',true);//对于IE 我甚至尝试了$('#submit').at

我有一个简单的表单,有三个四个输入字段和一个提交按钮

要实现的功能:单击“提交”按钮时,应禁用“提交”按钮,以便不能执行其他单击按钮。我无法隐藏按钮

现在,当我使用jquery/javascript禁用提交按钮时,请求也被禁用&表单没有在CHROME/IE8中发布

有什么解决办法吗

编辑:

代码:

$('#submit').attr('disabled',true);或$('#submit').prop('disabled',true);//对于IE


我甚至尝试了
$('#submit').attr('disabled','disabled')但结果相同。

你说你不能隐藏按钮,但这就是你需要的答案

当我遇到这个问题时,我隐藏了按钮,并将其替换为一个相同大小的小“加载”微调器图形

这涉及到为用户提供关于所发生事情的合理反馈的问题,以及解决禁用按钮的问题

如果确实需要按钮保持在原位但被禁用,则可以使用相同的技术隐藏真实按钮,并在其位置显示外观相同但被禁用的替代按钮

顺便说一句,当我遇到这个问题时,并不是因为表单没有发布;只是浏览器没有在其发布的字段中包含禁用按钮。如果后端脚本依赖按钮作为发布的值之一,那么这显然是一个问题。如果这是发生在您身上的方式,那么另一种解决方案是使用隐藏字段,并在禁用按钮时将按钮值复制到其中。这将仍然提交表单,而不发布禁用的按钮,但是您需要的值将出现在隐藏字段中


希望有帮助。

点击事件-提交表单

$(document).ready(function(){
    $('#submit-button-id').click(function(e) {
        //stop normal submit
        e.preventDefault();

        //disable button
        $(this).attr('disabled','disabled');

        //submit form
        $('#form-id').submit();
    });
});
这同样有效

$(document).ready(function(){
    $('#form-id').submit(function(e) {
        e.preventDefault();
        somefunction();
    });
});

function somefunction() {
    $('#form-id').unbind('submit');
    $('#submit-button-id').attr('disabled','disabled');
    $('#form-id').submit();
}

如何禁用提交按钮?代码将是有帮助的,我有一个加载器,但在不同的位置,通过应用程序的工作。我需要的是一个解决方案或一个原因,而不是诡计。这些把戏已经在我脑子里了。它在mozilla中工作。希望您看到它不仅仅在IE8/chrome中工作。我已经为您提供了两种解决方案。它们不是骗局;它们是解决方案。禁用的字段不会包含在表单帖子中。这就是它的工作方式;我不能告诉你如何改变,因为这就是它的工作原理。我能做的就是告诉你如何解决这个问题。我知道禁用字段没有发布,但是如果它在mozilla中工作,那么为什么不在IE8/chrome中工作呢。它也在IE9中工作。请求被执行,按钮被禁用…浏览器不尽相同。它们都试图符合相同的基本特性,但像这样的东西在它们之间确实有所不同。谢谢,土豆。在过去的12个小时里,我一直在为这件事伤脑筋。。解决方法似乎是可行的:)TClose:如果所有这些东西都写在一个函数中,并且这个函数在submit属性上执行会怎么样??如何得到“e”?我不认为“e”会给我提交事件,除非为提交编写了单独的函数。