textarea字符数限制
我希望能够限制文本区域中的字符数。我使用的方法在Google Chrome浏览器中效果很好,但是在Firefox中运行缓慢,在IE中不起作用。
Javascript:
function len(){ t_v=textarea.value;
if(t_v.length>180){
long_post_container.innerHTML=long_post;
post_button.className=post_button.className.replace('post_it_regular','post_it_disabled');
post_button.disabled=true;
}
else{
long_post_container.innerHTML="";
post_button.className=post_button.className.replace('post_it_disabled','post_it_regular');
post_button.disabled=false;
}
if(t_v.length>186){
t_v=t_v.substring(0,186);
}
}
HTML:
<textarea id="user_post_textarea" name="user_post_textarea" cols="28" rows="1" onkeypress="len();" onkeyup="len();"></textarea>
正文元素底部的Javascript:
textarea=document.getElementById('user_post_textarea');
回答:
我发现了一个很好的解决方案,如果浏览器支持,则使用maxlength属性,并在不支持的浏览器中回退到不引人注意的javascript pollyfill。
<textarea maxlength="50" id="text">This textarea has a character limit of 50.</textarea>
function maxLength(el) { if (!('maxLength' in el)) {
var max = el.attributes.maxLength.value;
el.onkeypress = function () {
if (this.value.length >= max) return false;
};
}
}
maxLength(document.getElementById("text"));
有没有这样的事情作为一个minlength
在HTML5属性。对于下面的输入类型:number
,range
,date
,datetime
,datetime-local
,month
,time
,和week
(这还没有完全支持)使用min
和max
属性。
以上是 textarea字符数限制 的全部内容, 来源链接: utcz.com/qa/411711.html