使用Jquery提醒过滤的单词

时间:2014-03-10 04:54:47

标签: javascript jquery html

我有this jsfiddle

我有一些词,当用户输入时,需要提醒用户。 现在,当我输入某一行时,I love ants它会提醒我整行I love ants,但我只想提醒ants。 (在我的例子中,蚂蚁是一个需要过滤的词。请参阅jsfiddle。)

var filter = ['ants', 'words'],
    reg = new RegExp("(" + filter.join("|") + ")", "g");

$('#texta').keyup(function(){
    $("#dest").html(
        $(this).val().replace(reg, "<mark>$1</mark>")    
    );
   if(reg.test($(this).val())==true)
   {
       alert($(this).val());
   }       
});

1 个答案:

答案 0 :(得分:2)

您可以将其更改为仅显示匹配的部分:

alert($(this).val().match(reg));

这是jsFiddle

如果您想为每个匹配单独发出警报,则必须循环播放。

每次用户在列表中输入单词时,

编辑 Here's a version会发出警报。

编辑:here's a version演示了可选地使用正则表达式而不是单词。请注意,任何斜杠都必须双重转义。因此,例如,要匹配ants而不是pants,请将\\bants\\b添加到单词列表中。例如,此演示将与\bb..\b匹配(因此,barbaz等,而不是batters)。