Javascript单词计数器问题

Javascript word counter issue

本文关键字:问题 计数器 单词 Javascript      更新时间:2023-09-26

我想做的是,对输入的单词总数进行计数,即使在清理文本区域后也会保存结果。

请查看以下代码的结果:http://jsfiddle.net/mnvMn/5/

注意:如果您想通过更改setInterval(autoPost,100)来解决此问题;不要!因为我测试了所有可用的change()、paste()、keyUp()。。。。功能。他们中没有人使用移动条形码扫描仪。只有设置间隔有效。

var form=$("#bcscanner"), ids=$('#itemids'), counter=0;
function count() {
    var value =$(ids).val().replace(" ", "").replace(/['s,]+$/, '');
    var words = value.split(",");
    var numWords =words.length;
    if($(ids).val() === '') {
        numWords = 0;
    }
    return numWords;
}
function autoPost(){
    counter=count()+counter;
    $("#counter").html(count()+'/'+counter);
    if(count()==="10"){   
       ajaxpost();     
       $(ids).val('');
    }
}
$(document).ready(function () {   
    $( "input:submit, input:reset").button();
    setInterval(autoPost, 100);
}); 

这是一个修改后的fiddle版本,可以正确计算单词总数:http://jsfiddle.net/MuyaK/5/

您在每次更新时更新全局计数器,而不是跟踪十个单词计数的总数。

您可以使用jQuery插件来计算单词,您可以按字符或单词限制键入http://qwertypants.me/counter/