如果我写的话,我想有一些功能
<textarea maxlength="50"></textarea>
<textarea maxlength="150"></textarea>
<textarea maxlength="250"></textarea>
Run Code Online (Sandbox Code Playgroud)
它会自动在textArea上施加maxlength.如果可能请不要在jQuery中提供解决方案.
注意:如果我这样做,可以这样做:
<textarea onkeypress="return imposeMaxLength(event, this, 110);" rows="4" cols="50">
function imposeMaxLength(Event, Object, MaxLen)
{
return (Object.value.length <= MaxLen)||(Event.keyCode == 8 ||Event.keyCode==46||(Event.keyCode>=35&&Event.keyCode<=40))
}
Run Code Online (Sandbox Code Playgroud)
复制在HTML textarea上模拟HTML输入"maxlength"属性的最佳方法是什么?
但问题是我每次声明textArea时都不想写onKeyPress和onKeyUp.
这是Jquery在添加属性"maxlength"时强制执行textarea的maxlength.IE不支持Maxlength.如何调整我的代码以处理页面上的多个textarea?目前,如果我向任何textarea添加文本,它们都会倒计时具有相同的值.
jQuery的:
$(document).ready( function () {
maxLength = $("textarea").attr("maxlength");
$("textarea").after("<div><span id='remainingLengthTempId'>"
+ maxLength + "</span> remaining</div>");
$("textarea").bind("keyup change", function(){checkMaxLength(this.id, maxLength); } )
});
function checkMaxLength(textareaID, maxLength){
currentLengthInTextarea = $("#"+textareaID).val().length;
$(remainingLengthTempId).text(parseInt(maxLength) - parseInt(currentLengthInTextarea));
if (currentLengthInTextarea > (maxLength)) {
// Trim the field current length over the maxlength.
$("textarea").val($("textarea").val().slice(0, maxLength));
$(remainingLengthTempId).text(0);
}
}
Run Code Online (Sandbox Code Playgroud)
HTML:
Skills:
<textarea id="1" maxlength="200" rows="10" cols="60" ></textarea>
Postions:
<textarea id="2" maxlength="200" rows="10" cols="60" ></textarea>
Comments
<textarea id="3" maxlength="100" rows="10" cols="60" ></textarea>
Run Code Online (Sandbox Code Playgroud)