我想自动从textarea剪切一个字符串,最多255个字符。 。所以我的Action只有255个字符。
但问题是Javascript认为换行符是一个字符,而Java则将其视为两个("\r\n")
。
所以即使我通过以下代码
将文本区域字符串长度限制为255个字符$('textarea[name*="matterData.customFields"]').each(function () {
if($(this).val().length>=255){
a=$(this).val().substring(0, 254);
$(this).val(a);
}
我的操作字符串长度总是大于255个字符,因为新行更改为"\r\n"
如何从jQuery中删除这个额外的\ r?
答案 0 :(得分:0)
你不能删除不存在的东西,但你可以做的是在检查长度之前添加它......
$('textarea[name*="matterData.customFields"]').each(function () {
var text = $(this).val();
text = text.replace(/\n/g, "\r\n");
if(text.length >= 255){
a = text.substring(0, 254);
$(this).val(a);
}
//...
}
如果您发现即使特定"\r\n"
java仍在替换"\n"
,即它变为"\r\r\n"
,那么您可以在检查后再次移除"\r"
和子串......
if(text.length >= 255){
a = text.substring(0, 254);
a = a.replace(/\r/g, "");
$(this).val(a);
}