【发布时间】:2011-09-15 04:45:02
【问题描述】:
我正在使用以下 jQuery 功能来实时统计单词:
$("input[type='text']:not(:disabled)").each(function(){
var input = '#' + this.id;
word_count(input);
$(this).keyup(function(){
word_count(input);
})
});
var word_count = function(field) {
var number = 0;
var original_count = parseInt($('#finalcount').val());
var matches = $(field).val().match(/\b/g);
if(matches) {
number = matches.length/2;
}
$('#finalcount').val(original_count + number)
}
我遇到的问题是,当我开始在输入字段中输入时,计数会立即增加 2,即使在空格和我的删除键上也是如此。任何想法为什么会发生这种情况?
我正在关注本教程:http://www.electrictoolbox.com/jquery-count-words-textarea-input/
输入:
<input class="widest" id="page_browser_title" name="page[browser_title]" size="30" type="text" value="">
显示输入:
<input class="widest" disabled="disabled" id="finalcount" name="page[word_count]" size="30" type="text" value="662">
【问题讨论】:
-
你可以输入你的html来输入和显示div吗?
-
你有jsfiddle 吗?
-
这里是 jsfiddle 的链接...jsfiddle.net/M7Jny
-
小提琴没有为我运行 - 我在控制台中得到
undefined is not a function。有人看到它工作了吗? -
@adam 您必须将
word_count声明移到each调用上方。
标签: javascript jquery