我有一个jQuery函数,其中我计算在keyup上留下的字符。jQuery的textarea字符数(包括回车)
function charactersLeft(e) {
var textArea = e.data.textArea,
charLeft = e.data.maxLength - textArea.val().length,
message = e.data.messageContainer;
if (charLeft < e.data.warningLength) {
message.addClass('red').removeClass('green');
}
else {
message.addClass('green').removeClass('red');
}
message.text(charLeft);
}
这个工作正常,但它将回车计为一个字符而不是两个。由于回车符以'\ r \ n'的形式传递,因此传递给服务器时会导致问题。
我该如何修改我的代码,以便每当我按下回车键时,字符计数减2而不是1,并且在删除回车符时加2而不是1?
谢谢:)
您好!感谢您的答复。我已经尝试过了,它在第一次尝试时有效,但不能用于成功回车。 (奇怪) – dork
哦好吧,我知道为什么。这是因为我在调用charLeft--之前计算再次输入的字符; – dork
是的,你必须坚持charLeft的值才能工作。 – beNerd