Google chrome Chrome和Firefox中文本区域与换行符的不同maxlength验证

Google chrome Chrome和Firefox中文本区域与换行符的不同maxlength验证,google-chrome,firefox,textarea,newline,maxlength,Google Chrome,Firefox,Textarea,Newline,Maxlength,问题是Firefox将换行符计算为“1”(\n)个字符,而Chrome将换行符计算为“2”(\r\n) 这是我在文本区域中得到的maxlength=10: 这是Firefox的10个字符 1234 5 6 7 这是10个字符,用于Chrome 1234 5 6 在尝试验证表单时会出现问题。例如,如果我有以下文本 012345 678 在Firefox中,验证通过并保存数据,但当我尝试在Chrome中执行相同操作时,它会显示一条警告,并阻止它发送表单。 “请将此文本缩短为10个字符或更少(您

问题是Firefox将换行符计算为“1”(\n)个字符,而Chrome将换行符计算为“2”(\r\n) 这是我在
文本区域中得到的
maxlength=10

这是Firefox的10个字符

1234
5
6
7
这是10个字符,用于Chrome

1234
5
6
在尝试验证表单时会出现问题。例如,如果我有以下文本

012345
678
Firefox中,验证通过并保存数据,但当我尝试在Chrome中执行相同操作时,它会显示一条警告,并阻止它发送表单。 “请将此文本缩短为10个字符或更少(您当前使用的是11个字符)”

我认为这个验证消息在Chrome中是新的,或者至少我以前没有看到过

这是一个例子。要在Chrome
中复制它,您应该编写一个包含10个字符的字符串,然后删除1,然后按enter键添加新行

下面是一个JavaScript如何计数的示例


不知道哪一个是新行(1或2)的正确值。但是由于数据库(PASGRESS)和JavaScript认为它是“强”>“1”<强>字符,所以我想知道是否有一种方法可以使<强> Chrox这样做。

< P>我没有找到任何解决办法,使Max StimeBuiTube在所有浏览器中都能以同样的方式工作,我认为是因为它相对新。所以我决定使用javascript

在谷歌上搜索一下,我发现这个插件非常好,只需添加几行代码。在麻省理工学院许可证下提供。并按应计新行数(2个字符)

它有一些参数来设置最大长度、反馈文本、满时背景变化等。这个网站有很好的文档和很多例子

它是高度可定制的‎, 例如,这里是我的

这是我唯一使用的代码加上一些css

<script type="text/javascript" src="jquery.plugin.js"></script>
<script type="text/javascript" src="jquery.maxlength.js"></script>
<script>
    $(function() {
        $('.t_tresc').maxlength({
            showFeedback: true,
            feedbackText: '{c} / {m} max.', 
            overflowText: '{c} / {m} max!', 
            feedbackTarget: '#targetFeedback$name',
            max: $max_length,
            truncate: false,
            onFull: null
        }); 
    });
</script>

$(函数(){
$('.t_tresc').maxlength({
展示反馈:没错,
反馈文本:“{c}/{m}max.”,
溢出文本:'{c}/{m}max!',
反馈目标:“#targetFeedback$name”,
最大:$max_长度,
截断:假,
onFull:null
}); 
});