-3

最初,问题是我必须得到一些通知,当用户在 JqueryUI 自动完成中输入的术语(项目中的城市名称)与集合中的任何内容不匹配时(输入“我的甜蜜城市”并且它不匹配 [莫斯科,新 -北京约克])。所以我将重写我的代码以手动搜索数组,但我有一个问题——数组搜索如何像自动完成一样?

4

1 回答 1

1

有几种方法可以做到这一点。如果它很简单,您可以使用indexOf这样来查找匹配项:

var arr = ["one", "two", "three", "four", "five"];
var inputText = "three";

if (arr.indexOf(inputText) > -1) {
    alert("item found");
}
else {
    alert("item not found");
}

另一种选择(也是更有效的选择)是使用常规表达式并循环遍历数组以查找匹配项(由 Aleadam 提到):

function searchStringInArray (str, strArray) {
    for (var j=0; j<strArray.length; j++) {
        if (strArray[j].match(str)) return j;
    }
    return -1;
}
于 2015-07-20T16:54:21.937 回答