我正在尝试使用keyup功能禁用textbox。我有一个TextArea和一个文本框。现在,我在backspace键上使用了keyup操作,就像textarea中的内容长度为3一样,它应该禁用textbox。我还有一条警告信息,当文本区域中的内容长度为3时,会弹出一条警告信息。代码可以弹出,但对文本框无效。我遗漏了什么?请帮帮忙。这是我的代码:
$('#comment').keyup(function() {
if (event.which == 8) {
var txt = $('#comment').val().length;
if(txt == 3)
{
alert("backspace");
$("#text1").attr("diasbled", "diasbled");
}
}
});这是JSfiddle的用途。
发布于 2014-04-24 07:12:57
这里有一些错误,应该是disabled,而不是diasbled,试试这个
$('#comment').keyup(function () {
var len = $(this).val().length;
if (len >= 3) {
$("#text1").prop("disabled", true);
}
else{
$("#text1").prop("disabled", false);
}
});演示
发布于 2014-04-24 07:10:57
你得做:
1) this.value.length,以获取文本区域的总字符长度
2)在jQuery版本1.6中,使用.prop()而不是.attr()来设置元素的属性
3)改正错误:应该是disabled而不是diasbled
$('#comment').keyup(function () {
if (this.value.length >= 3) {
$("#text1").prop("disabled", true);
} else {
$("#text1").prop("disabled", false);
}
});更新Fiddle
发布于 2014-04-24 07:12:48
使用prop代替attr也将事件传递给函数
$('#comment').keyup(function (event) { //and event here
if (event.which == 8) {
if ($(this).val().length >= 3) {
$("#text1").prop("disabled", true);
}
}
});https://stackoverflow.com/questions/23262117
复制相似问题