所以我正在开发一个Phonegap应用程序,并且遇到了textarea和maxlength的问题。
当在Google Chrome上构建Phonegap应用时,可以使用电话本身的换行符/输入来写入超过255个字符。
继承人我的HTML:
<textarea class="content" wrap="physical" rows="10" cols="50" maxlength="255"></textarea>
继续我的JS / jQuery:
$('.content').keyup( function(e){
/*var char = 255 - $(this).val().length;
if(char < 0) char = 0;
$('.char_left').text(char);*/
var y = 255;
var x = $(this).val();
x = x.replace(/(\r\n|\n|\r)/g,"");
x = x.length;
if (x >= y) {
$('.char_left').text('Limit!');
} else {
var ch = y - x;
$('.char_left').text(ch);
}
});
我已经注释了我使用的早期版本,并且在默认的android浏览器中工作。
答案 0 :(得分:1)
尝试此操作:检查textarea
的值的长度是否大于指定的maxlength
,然后返回false,否则不执行任何操作。
$(function(){
var maxlength = $('.content').attr('maxlength');
$('.content').keyup(function(){
if($(this).val().length > maxlength)
return false;
});
});
<强> Demo 强>
答案 1 :(得分:1)
这有效:
MaxLength = 255;
$('.content').keyup(function(e)
{
if ($(this).val().length > MaxLength)
{
$(this).val($(this).val().substring(0, MaxLength));
}
});
它将确保无论如何,它都不会超过255.它基本上会在MaxLength之后切断任何东西。