根据变量搜索 JSON 数组
Search JSON Array based on variable?
我有一个需要搜索的JSON数组:
[
{
"Device_ID":"1",
"Image":"HTC-One-X.png",
"Manufacturer":"HTC",
"Model":"One X",
"Region":"GSM",
"Type":"Phone"
},
{
"Device_ID":"2",
"Image":"Motorola-Xoom.png",
"Manufacturer":"Motorola",
"Model":"Xoom",
"Region":"CDMA",
"Type":"Tablet"
},
{
"Device_ID":"8",
"Image":"null",
"Manufacturer":"Motorola",
"Model":"Xoom 2",
"Region":"CDMA",
"Type":"Tablet"
}
]
使用关键字:$_GET['keyword'];
我需要能够执行以下操作。搜索制造商和型号的组合值,即。摩托罗拉Xoom。 然后,对于与此匹配的任何一组值,将它们输出到变量。
例如:如果关键字是HTC,那么它将搜索数组并输出:
$DeviceID = 1 $Image = HTC-One-X.png $Manufacturer = HTC $Model = One
X $Region = GSM $Type = Type
但是,如果关键字是摩托罗拉,则需要输出包含摩托罗拉的所有条目。
我试图做的是在用户键入关键字时输出所有 JSON 数组条目的实时视图。 但是,我希望它在用户计算机上运行以减少服务器上的负载。
有谁知道最好的方法吗?
好吧,
如果您在选项部分中有一个带有制造商值的选择框,那么它就像:
.HTML:
<select id="selectionBox">
<option>...</option>
</select>
<div id="outPut">
output goes in here
</div>
Javascript:
var selectedValue = document.getElementById("selectionBox").value;
for(var i = 0; i < jsonObject.length; i++){
if(jsonObject[i].Manufacturer === selectedValue){
//considering your object is an array let's
for(var key in jsonObject[i]){
document.getElementById("outPut").innerHTML += jsonObject[i][key] + "</br>";
}
}
}
这几乎会将对象中的所有内容打印到输出div 上,其余的取决于您的样式。
这是一个用于过滤 JSON 的函数。显示数据由您决定。
var devices = <your JSON array>;
function filter(keyword, data) {
var filteredArray = [], i, j;
for (i = 0, j = data.length; i < j; i++) {
if ((data[i].Manufacturer && data[i].Manufacturer.indexOf(keyword) !== -1) || (data[i].Model && data[i].Model.indexOf(keyword) !== -1)) {
filteredArray.push(data[i]);
}
}
return filteredArray;
}
// Example usage
var MotorolaDevices = filter('Motorola', devices);
相关文章:
- 需要帮助设置json数组
- 如何使用 node.js 比较两个 json 数组
- 根据id将json数组组合为一个json数组
- 如何创建JSON数组
- 如何将package.json数组传递给grunt.js
- 访问json数组中的对象
- JSON数组数据返回Undefined
- 如何向JSON数组动态添加属性
- 如何从json数组中获取特定值
- 从多维嵌套json数组创建下拉列表
- 在ListView中添加JSON数组中存储的图像-ReactNative
- jquery在json数组中循环
- 将 JSON 数组解析为 JavaScript 数组
- 如何在php中读取没有任何键的JSON数组
- 如何在Jquery中迭代JSON数组
- 如何在cycle js中从JSON数组创建组件
- 如何使用jquery返回php-json数组对象
- JSON数组转换为JS对象数组
- 使用System从C#集合创建JSON数组.网状物剧本序列化
- 使用Underscore.js修改json数组中所选元素的更有效方法