【发布时间】:2014-09-29 10:16:18
【问题描述】:
我有一个用户输入的文本字段,然后用于将用户输入的内容与存储变量中的一组字符串进行匹配。
这是我目前所拥有的:
var sports = ['skateboarding','bmx','surfing','longboarding','snowboarding'];
var interests = ['photography', 'editing', 'film making'];
var hobbies = ['gaming', 'music', 'tv'];
$('#test').bind('input change',function(){
var search = $(this).val();
$.each([sports, interests, hobbies], function(index, value){
$.each(value, function(key, cell){
if (search.indexOf(cell) != -1){
$('ul').append('<li>' + value[key] + '</li>');
}else{
}
});
});
});
作为一个基础,这有效,但只匹配整个单词,而不是单词的一部分。我怎样才能做到这一点,以便单词的任何部分都匹配。例如: 如果用户键入 board,它将匹配滑板、长板和滑雪板。
是否有一个容易从 ul 列表中删除不再匹配的单词的方法。
我也有一个 JS 小提琴:
【问题讨论】:
标签: javascript jquery regex search each