我有一個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