如何检查 URL 中的 ID 并使用 getJSON 仅输出该 ID

How to check for ID in URL and output only that with getJSON

这是我的HTML。

<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"> </script>
<script>

   $(function() {

   var people = [];

   $.getJSON('test.json', function(data) {
       $.each(data.person, function(i, f) {
          var tblRow = "<tr>" + "<td>" + f.ID + "</td>" +"<td>" + f.Destination + "</td>" +
           "<td>" + f.SupplierName + "</td>"  + "</tr>"
           $(tblRow).appendTo("#userdata tbody");
     });

   });

});
</script>
</head>

<body>
<table id= "userdata" border="2">
  <thead>
  <th>ID</th>
    <th>Destination</th>
    <th>SupplierName</th>
    </thead>
  <tbody>
  </tbody>
</table>
</body>
</html>

这是我的 test.json 文件

{
  "person" : [
    {
      "ID" : 100,
      "Destination" : "brisbane",
      "SupplierName" : "Hilton Brisbane",

    },
    {
      "ID" : 101,
      "Destination" : "brisbane",
      "SupplierName" : "Hotel Grand Chancellor Brisbane",

    },
    {
      "ID" : 102,
      "Destination" : "brisbane",
      "SupplierName" : "Park Regis North Quay",

    } 
  ]
}

我想做什么

输出工作正常。但这是我正在尝试做的事情。

我的网站看起来像 www.website.com?deal=100

我想在 'deal' 参数的末尾查找 ID,并且只从 JSON 数组中输出该 ID 的信息。 JSON 数组中有一个具有相同 ID 的对象。你能帮忙吗?

执行 if 测试该 id 是否与 url

中的 id 一致
 $.getJSON('test.json', function(data) {
       $.each(data.person, function(i, f) {
          if(window.location.href.split('=')[1] == f.ID) {//asumes that you have only the deal as a url param
          var tblRow = "<tr>" + "<td>" + f.ID + "</td>" +"<td>" + f.Destination + "</td>" +
           "<td>" + f.SupplierName + "</td>"  + "</tr>"
           $(tblRow).appendTo("#userdata tbody");
}
     });

试试这个:

$.each(data.person, function(i, f) {
 var param = window.location.href.slice(window.location.href.indexOf('?') + 
 1).split('=');
 var id = param[1];
 if (f.id == id){
  var tblRow = "<tr>" + "<td>" + f.ID + "</td>" +"<td>" + f.Destination + "
  </td>" +  "<td>" + f.SupplierName + "</td>"  + "</tr>"
           $(tblRow).appendTo("#userdata tbody");
  }
});