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属性。对于下面的输入类型:numberrangedatedatetimedatetime-localmonthtime,和week(这还没有完全支持)使用minmax属性。

以上是 textarea字符数限制 的全部内容, 来源链接: utcz.com/qa/411711.html

回到顶部