2017-04-13 41 views
0

这是我的JSON文件的一部分检查JSON对象是类似于URL的一部分

"hotels" : [ 
    { 
     "ID" : 100, 
     "pageURL" : "brisbane.php", 
     "SupplierName" : "Hilton Brisbane", 
    } 
    { 
     "ID" : 101, 
     "pageURL" : "gold-coast.php", 
     "SupplierName" : "Hilton Gold Coast", 
    } 

这是我的网址

website.com/brisbane.php 
website.com/gold-coast.php 

什么即时试图做

当我访问brisbane.php时,我正在检查URL以查看pageURL是否存在于此脚本中

if(window.location.href.indexOf(f.pageURL) > -1){ 
    //pull all the objects with f.pageURL and show them on the page 
} 

然后我想在我的网站上用jQuery打印所有带有“brisbane.php”的对象作为pageURL

林停留在

我不知道如何拉在“PAGEURL”。换句话说我想抓住一切从有pageURL JSON文件全部用“brisbane.php”的对象是什么as brisbane.php

是否必须从网址中拉出字符串并将其与pageURL进行比较?

你能帮忙吗?

+0

所以你得到'f.pageURL'(比如说brisbane.php),你想抓住'ID' 100的对象? –

+0

号我可以抢ID与我的脚本 '$ .getJSON( 'deals.json',函数(数据){ \t \t $。每个(data.hotels,功能(I,F){' 我想在json文件中将f.pageURL设置为'brisbane.php'来抓取所有内容 – nasty

+1

如何在循环之前创建数组并在循环中推送具有特定'pageURL'的对象?是否需要一个例子那个? –

回答

1

我会尝试使用Array.filter来返回一个与pageURL键匹配的过滤数组。假设您的酒店JSON存储在变量json中,并且您希望匹配字符串“brisbane.php”,那么以下内容应筛选对象的JSON数组并返回匹配相应键的对象数组,并记录它到控制台。

var match = "brisbane.php"; 

console.log(json.hotels.filter(function(elem) { 
    return (elem.pageURL == match); 
})); 
0

这就是我必须要解决的问题。

if (window.location.href.indexOf(f.pageURL) > -1) { 

      var currentPageURL = f.pageURL; 

      if(f.pageURL = currentPageURL){ 
       console.log(f.SupplierName); 
      } 

     } 

这只是显示所有供应商与brisbane.php,而在该页面上。

相关问题