使用JQuery删除特定数字后的单词

时间:2015-02-21 13:23:01

标签: jquery regex string

我有一个textarea我想只允许30个字并删除剩余的额外字词:

$("#short_desc").keydown(function(e){

    var d = $(this).val().split(/\b[\s,\.-:;]*/).length;
    if(d > 30){
        alert("Only 30 words allowed");
        e.preventDefault();
        // here i want to add logic how to remove words.
        return false;
    }
});

我尝试过字符计数,但不能缩短这个逻辑。 有人可以提供一些提示吗?

我有一个计算空格的逻辑,然后计算字符数到30个空格,并在该字符数之前得到子字符串。

1 个答案:

答案 0 :(得分:2)

取而代之的是;您可以将30个第一个单词分配给textarea值。

下一个代码效果很好。 {@ 1}}分隔符不会被删除。我使用split():任何捕获的文本都包含在结果字符串数组中。

  

注意:

     

您必须使用想要限制的金额的两倍。您应该使用 60

     

我创建了一个“常量”capturing parentheses来使事情变得最简单。

MAX_WORDS_ALLOW

您可以在此处查看此操作:http://jsfiddle.net/xfhoc1gq/2/