【发布时间】:2014-08-29 15:03:17
【问题描述】:
我一直在用头撞墙,试图找出从 textarea 中获取字符倒计时的最佳方法。我已经创建了这个jsfiddle,但如果我从lipsum.com 粘贴4000 个字符,那么它说它超过了12 个字符。我知道这是因为换行符,但我不确定如何让它正常工作,并且在浏览器中保持一致。
$('textarea').on('keyup', function() {
characterCount(this);
});
$('textarea:not(:empty)').each(function() {
characterCount(this);
});
function characterCount(that) {
var $this = $(that),
$maxLength = $this.attr('data-val-length-max'),
$lengthOfText = $this.val().length,
$charCountEl = $this.closest('.form-group').find('.maxchar-count');
if($maxLength) {
$($charCountEl).text($maxLength - $lengthOfText);
}
if($lengthOfText > $maxLength) {
$charCountEl.addClass('has-error');
} else {
$charCountEl.removeClass('has-error');
}
}
还有标记
<div class="form-group">
<textarea rows="5" data-val-length-max="4000"></textarea>
<div>
<span class="maxchar-count">4000</span>
</div>
</div>
我见过一些类似的问题,但还没有找到适合我的答案。
谢谢
亨利
【问题讨论】:
-
您可以获取文本区域的值并使用替换删除换行符。
标签: javascript jquery html