4

我有一个文本框,我需要在某些条件下禁用或启用它。

var stat = "any interger"
    if (statId != 1) {
     $('#<%=txt1.ClientID %>').attr("disabled", "disabled");
     } 
    else {
    $('#<%=txtBQty.ClientID %>').attr("enabled", "enabled");
     }

这将起作用,但如果条件返回 false 则禁用后也意味着它不会启用文本框。

4

4 回答 4

11

enabled不是textboxes 的有效属性。因此,以下内容将无效:

$('#<%=txtBQty.ClientID %>').attr("enabled", "enabled");

而是使用

$('#<%=txtBQty.ClientID %>').removeAttr("disabled");
于 2012-11-20T10:19:09.047 回答
7

禁用

$('#<%=txt1.ClientID %>').attr("disabled", "disabled");

启用

$('#<%=txt1.ClientID %>').removeAttr("disabled");
于 2012-11-20T10:22:28.493 回答
2

要禁用使用:

$('#<%=txt1.ClientID %>').attr("disabled", "disabled");

启用只是清除值

$('#<%=txt1.ClientID %>').attr("disabled", "");
于 2012-11-20T10:19:21.793 回答
1

如果它是在最新版本的 jQuery 中,你可以这样做

var stat = "any interger";
if (statId != 1) {
     $('#<%=txt1.ClientID %>').prop("disabled", true);
} 
else {
    $('#<%=txtBQty.ClientID %>').prop("disabled", false);
}

如果必须使用.attr(),可以禁用 with$(selector).attr('disabled','disabled')并启用 with$(selector).removeAttr('disabled')

于 2012-11-20T10:18:44.320 回答