javascript - 在按钮 onclick 事件后禁用整个 DIV 标签和里面的所有内容

标签 javascript jquery html onclick

我有一个如下所示的 HTML 标记:

<div id="picing-selection" class="disableMe">
    <a class="upgradeSub" value="@ViewBag.Id">
        Upgrade <i class="fa fa-money"></i>
    </a>
</div>

定义的 onclick 事件如下所示:

$(document).on("click", ".upgradeSub", function() {
    $.post("/Subscription/UpgradeSubscription", {
        SubID: $(this).attr("value") 
    }).done(function(data) {
        if (data == "Ok") {
            $(this).prop('disabled', false);
            window.location.href = "/Index/Success";
        } else if (data == "Error") {
            alert("Something went wrong");
        }
    });
});

我想禁用任何 future 的 onclick 事件,直到服务器响应状态为“ok”或“Error”

我试过类似的方法:

$(document).on("click", ".upgradeSub", function() {
    $(this).prop('disabled', true);
    // After this goes the post to server
});

但这没有用...我仍然可以继续点击,jquery 将继续向服务器发送请求...

最佳答案

disable 属性对 div 不起作用。

一个解决方法是在 div 上添加一个 disable 类,只要你想禁用它,然后在点击监听器上首先检查 div 是否没有禁用的类来执行进一步的代码。

关于javascript - 在按钮 onclick 事件后禁用整个 DIV 标签和里面的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51872738/

相关文章:

javascript - Node-Webkit - 计算部分下载文件的哈希值 [opensubtitles]

javascript - 如何使用动态生成的文件名数组在 Grunt 中运行任务?

javascript - 如果存储为对象,如何检索数据?

jquery - 检测文本框内容是否已更改的电池友好方式

javascript - 在其中声明一个带有 html 的变量,并使用 .insertAfter 插入该变量

html - JavaScript 与 CSS

javascript - 如何在javascript中缩放(调整大小)图像保持纵横比

javascript - Doubletaptogo 响应式菜单在手机上不起作用

javascript - 如何使用 JavaScript 在 HTML 中的 textArea 上施加最大长度

javascript - 解析错误 400(错误请求){代码 : 201, 消息: "missing user password"}