我有一个脚本,告诉我的按钮在字符数超过160但不起作用时进入禁用模式。知道为什么吗?
这是我的javascript:
<script>
function CountLeft(field,max){
//disable post
if (field.value.length > max)
$('#workroom_submit').attr("disable","disable");
// enable post
if (field.value.length <= max)
$('#workroom_submit').attr("disable","");
}
</script>
这是我的HTML:
<textarea cols="50" rows="3" name="postMsg" onKeyDown="CountLeft(this.form.text,160);" onKeyUp="CountLeft(this.form.text,160);"></textarea>
<input type="submit" name="workroom_submit" id="workroom_submit" disable="" value="Post" onclick="updateMsg()"/>
答案 0 :(得分:1)
我做了一个小例子:http://jsfiddle.net/vKFws/
删除了所有HTML事件绑定并使用了jQuery的事件绑定
<textarea cols="50" rows="3" name='postMsg' id='postMsg'></textarea>
<input type="submit" id="workroom_submit" value="Post"/>
$('#postMsg').keyup(function(){
var thetext = $(this).val();
if (thetext.length > 60) {
$('#workroom_submit').attr('disabled', 'disabled');
} else {
$('#workroom_submit').removeAttr('disabled');
}
})
答案 1 :(得分:1)
jQuery id智能处理所有输入并通过调用val()方法返回值。
function CountLeft(field,max){
$field = $(field) // convert the field in jQuery object
//disable post
if ($field.val().length > max)
$('#workroom_submit').attr("disabled","disabled"); // the attr name is disabled
// enable post
if ($field.val().length <= max)
$('#workroom_submit').removeAttr("disable");
}
答案 2 :(得分:0)
答案 3 :(得分:0)
您可以从以下链接中获得一个想法:
尝试使用disabled
属性。
disabled="disabled";