我想减少用户输入时给定文本区域的字符数。
我用下面的代码
var txtArea = $('<textarea class="txtStyle"></textarea>').appendTo('.txtArea');
var rem_txt = 500;
var text = "Characters remaining";
$('.txtStyle').keyup(function () {
debugger;
var txt_txtarea = $(this).val().length;
rem_txt = rem_txt - txt_txtarea;
});
$('<div id="rem">' + text + '=' + rem_txt + ' </div>').appendTo('.txtArea');
但是div不会更新count的值。请帮助DEMO HERE
最佳答案
您不是在更新处理程序内部的html,而是在重新计算剩余金额,而不是在更新UI。
如果您在事件处理程序中更新内部文本,则会看到其余文本:
http://jsfiddle.net/5Lszd/4/
var lengthAllowed = 500,
txtArea = $('<textarea class="txtStyle"></textarea><div id="rem">Characters remaining ' + lengthAllowed + '</div>').appendTo('.txtArea');
$('.txtStyle').keyup(function () {
var charsSoFar = $(this).val().length,
remaining = lengthAllowed - charsSoFar;
$('#rem').text('Characters remaining='+remaining);
});
但是,达到最大文本数时您尚未处理。
关于javascript - 如何减少字符数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20542557/