当我想在多维数组中搜索时遇到问题。 我在textarea里面有一个字符串
<textarea id='alltemplatememe'>
['2','makan lagi','kwik-templatememe-20171208215155.jpg'],['1','apapun','kwik-templatememe-20171208215124.jpg']
</textarea>
我会将textarea中的数据更改为数组,例如下面的函数
function meme_template_search(){
var keyword=$("#keyword_template").val();
var template=$("#alltemplatememe").val();
var resultsame="";
template=eval("[" + template + "]");
for(var i=0; i<template.length; i++){
result=template[i][1].search(new RegExp(keyword, "i"));
if(result=="1"){
resultsame+=template[i][1]+", ";
}
result="";
}
alert(resultsame);
}
我已经尝试了上面的代码,但问题是上面的代码只显示了一个结果
当我使用关键字&#34; a&#34;进行搜索时,它应该是两个,但我所做的功能只显示一个结果
答案 0 :(得分:0)
您将结果限制为只有一行
if(result=="1"){
结果显示关键字在字符串中的显示位置。
即:
Search 'a' in 'Apple' -> 0 | Search 'to' in 'Potato' -> 4
如果您的关键字没有出现在字符串中,则结果为-1
所以将你的行改为:
if (result !== -1) {
字符串匹配时会出现这种情况。
请点击此处了解更多详情: JavaScript RegExp Object