Javascript 有选择地返回JSON对象结果
我尝试使用以下代码有选择地从标准JSON文件返回结果:Javascript 有选择地返回JSON对象结果,javascript,json,jquery,Javascript,Json,Jquery,我尝试使用以下代码有选择地从标准JSON文件返回结果: var filters = { manufacturer: "Samsung" }; // filters initialised, now getJSON with filters $.getJSON("phones.json", filters, function(result) { alert(result.phones.length); }); // end getJSON 我想做的是只返回“制造商”是三星的对象。JSO
var filters = { manufacturer: "Samsung" };
// filters initialised, now getJSON with filters
$.getJSON("phones.json", filters, function(result)
{
alert(result.phones.length);
}); // end getJSON
我想做的是只返回“制造商”是三星的对象。JSON如下所示:
{
"phones": [{
"basic": {
"id" : "1",
"name": "Samsung Galaxy S III",
"manufacturer": "Samsung",
等等等等
它不工作,根本没有过滤JSON。有人能帮忙吗
谢谢。$.getJSON()
不支持筛选,因此假设您的phones.json
是一个没有服务器端处理的静态文件,您必须在客户端进行筛选:
$.getJSON("phones.json", function(result)
{
var filtered = [];
$.each(result.phones, function(key, value){
if(value.basic.manufacturer == 'Samsung'){
filtered.push(value);
}
});
console.log(filtered);
});
以上内容将过滤后的手机存储在
过滤后的
中 除了在服务器端执行之外,我看不到其他方法。i、 e.如果您只想传输过滤后的数据。如果您可以传输整个内容,然后在客户端进行过滤,那么您可以完全用JS完成。//过滤器已初始化,现在使用过滤器$.getJSON(“phones.json”,function(result){var matchedPhones=new Array();$.each(result,function(k,v){for(var i=0;iNo.Poth.Field.I++){//手动测试IF(V[i] .Basic .Muffic===“三星”){/ /将该电话存储在我们的新对象MateldPhone中。PUP(V[i]);}……@ CordNeNut看起来不错。如果这解决了,请考虑接受答案,请参见: