キーアップに残っている文字を数えるjQuery関数があります。
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);
}
これは正常に機能しますが、キャリッジリターンは2文字ではなく1文字としてカウントされます。これにより、キャリッジリターンが'\ r \ n'として渡されるため、サーバーに渡されるときに問題が発生します。
Enterキーを押すたびに、キャリッジリターンが削除されたときに、文字数が1ではなく2を減算し、1ではなく2を加算するように、コードを変更するにはどうすればよいですか?
ありがとうございました :)