重新启用按钮不起作用

时间:2015-06-26 01:53:08

标签: javascript jquery html

我在表单上有一个按钮,当用户单击它时会被禁用。然后,我在表单上执行一些验证,并让用户知道是否有任何错误。我在重新启用按钮时遇到问题。下面是禁用按钮的代码(在Windows 8上停止IE以及注册多次点击时相当复杂):

var alreadySent = false;
$(document)
    .ready(function () {
        $("#submitBtn")
            .click(function (event) {
                event.preventDefault();
                if (!alreadySent) {
                    $("#checkInOutForm")
                        .submit();
                    alreadySent = true;
                }
                $(this)
                    .prop("disabled", true);
            });
    });

以下是应该重新启用按钮或提交表单的代码。你还可以看到我试图重新启用按钮的所有内容 - 没有一个工作 - 按钮保持禁用状态。

function addNewSubmit() {
    if (document.getElementById("actionType").value === "deleteVisit") {
        if (confirm("Deleting a visit cannot be undone.\nAre you sure you wish to continue?")) {
            document.addNew.submit();
        }
    } else {
        var error = checkAddNewRequiredFields();

        if (!error == "") {
            // Re-enable the submit button
            document.getElementById("submitBtn").disabled = false;
            //document.getElementById('submitBtn').removeAttribute("disabled");
            //document.getElementsByTagName("#submitBtn")[0].removeAttribute("disabled");
            //$('#submitBtn').removeAttr('disabled');

            //$('#submitBtn').prop("disabled", false);
            /*$('#submitBtn').each(function() {
                this.disabled = false;
            });*/
            //$("#submitBtn").button('refresh');
            alert(error);
            return false;
        } else {
            document.addNew.submit();
        }
    }
}

我不想简单地刷新页面来重新启用按钮 - 启用按钮似乎有点沉重!

我在此页面上运行jQuery Mobile,因为它设计为从桌面或移动设备运行,我能够在最新版本的IE,Chrome和FF中复制错误。

非常感谢任何帮助。 加雷

编辑:此按钮显示在隐藏设置上,当用户点击按钮时,该隐藏设置为弹出窗口。

1 个答案:

答案 0 :(得分:0)

由于您使用的是jQuery,因此可以使用它来启用它

 $('#submitBtn').prop('disabled', false);

确保$('#submitBtn')返回对象并检查错误是否正常