暂时使用jQuery禁用按钮

时间:2013-08-12 11:45:44

标签: javascript jquery

我想在不删除侦听器的情况下禁用按钮元素,例如我有以下代码:

<input id="in" />
<button id="sub">Submit</button>

$('#sub').click(function (e) {
    //Some actions
});


$($('#in').keyup(function (e) {
    if (new Date($(this).val()) == 'Invalid Date') {
        $(this).addClass('invalid');
        $('#sub').addClass('disabled');
    }
    else {
        $(this).removeClass('invalid');
        $('#sub').removeClass('disabled');

    }
});

我想取消绑定按钮单击侦听器,但如果我使用off()unbind(),我将不得不在else子句中“重新绑定”它。 / p>

有没有更好的方法呢?

2 个答案:

答案 0 :(得分:3)

如何禁用按钮而不是添加类?

<强> HTML:

<button>Disable Me</button>

<强> JS

$(function() {
    $("button").click(function() {
        alert("click!");
       $(this).prop("disabled", true); 
    });
});

<强> CSS

button[disabled] {
 color: red;
}

Here是一个可以证明的jsFiddle。

答案 1 :(得分:0)

使用$('#sub').prop('disabled');