gpt4 book ai didi

javascript - jQuery 匹配 JSON 对象的部分文本

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:36:55 27 4
gpt4 key购买 nike

我正在为我的网站做一个实时搜索结果功能。我有一个包含关键术语的 JSON 对象,我想将其与输入的值相匹配。

为此,我能想到的最佳解决方案是循环遍历每个术语,并使用 jQuery 选择器查找部分匹配项。我怎样才能做出这样的 if 声明?例如:

$.getJSON('jsonfile.json', function(data) {
key = Object.keys(data);
for(i=0;i<key.length;i++)
{
if($(input[value]:contains == key[i].term)
{
//do something
}
}
}

编辑:我很抱歉不清楚。我使用 :contains 选择器对一个输入的值进行部分匹配。

最佳答案

您需要将 :contains 选择器构建为字符串:

if($('input[value]:contains("' + key[i].term + '")').length) {
//do something
}

选择器将返回输入包含该术语的所有元素;添加 .length 为要评估的 if 语句提供了一个简单的“真实”值(返回 0 个项目 == “false”,返回 >0 个项目 == “true”)。

编辑: 我不确定 input[value]:contains() 是否是一个有效的 jQuery 选择器,因为我不知道文本 :contains() 查看输入元素。您可能需要自己检查每个输入的 来帮助解决这个问题。您可以将找到的输入过滤为值包含您要搜索的术语的输入:

if ($('input[value]').filter(function() {
return $(this).val().indexOf(key[i].term) != -1;
}).length) {
//do something
}

关于javascript - jQuery 匹配 JSON 对象的部分文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12442952/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com