css - 一旦 IE8 问题,单击按钮后禁用按钮

标签 css jquery internet-explorer-8

我想在点击后禁用提交按钮..让我解释如下

  1. 表单提交验证是使用 ajax 调用完成的,提交按钮是使用禁用的 .attr("禁用",true);

  2. 如果响应为“失败”(即验证失败),则可以在 ajax 响应中使用 .attr("disabled",false) 再次点击按钮

这在 FF 和 chrome 中工作得很好,但在 IE8 中,每当按下按钮时,启用到禁用的效果是可见的(单击时按钮正常,像禁用一样可见)。不希望在 IE8 上出现这种暂时的外观变化。

我什至尝试了一些建议,例如使用 .attr("disabled","disabled");.removeAttr("disabled"); 使其禁用和使能够。 代码片段:-

$("#submitBtn").click(function(event) {
    event.preventDefault();
    $("#submitBtn").attr('disabled',true);
    dataToPost = $("#Form").serialize();
    $.ajax({
        type: "POST",
        url: 'FormValidation',
        data: dataToPost ,
        success: function(response){
            if(response.status=='FAIL')
            {
                $("#submitBtn").attr('disabled',false);
                 //Some code
          }
             else{
        /* submit the form to if validation is successful */
                saveData(dataToPost);
            }

最佳答案

为什么不阻止点击行为,而不是禁用按钮? 一种方法是执行以下操作:

var waitingForAjax = false;

$('yourButton').click(function(e){
    if (waitingForAjax) {
        return false;
    }

    waitingForAjax = true;
    // ajax call
});

然后在 ajax 失败时再次将 waitingForAjax 设置为 false

关于css - 一旦 IE8 问题,单击按钮后禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11347572/

相关文章:

javascript - CSS调整图像大小,保持排列

html - 显示 : inline-block vs display: table (no display: table-cell)

javascript - 垂直菜单与 Masonry 的奇怪行为

java - 配置 Tomcat 以发送兼容 IE 7 或 6 的网页

jquery - 网站在 IE 8.0.6011.19088IC 中渲染异常

css - 如何更改 Angular Material 垫子滑动切换属性?

jquery - 将多个参数传递给 $.delegate

javascript - 创建在线测验和警报

jquery - 当我点击打开它的链接时,为什么这个 div 不会关闭?

java - 在 SilkTest 中处理 IE8 信息栏