如何多次调用getJson并在完成第一个传递的项后传递它?

时间:2013-05-09 01:57:40

标签: javascript ajax getjson

我有一个getjson来电,我希望将一些项目传递给它。我想知道如何多次调用此getjson并传递它们,如书,笔,纸等......如果这些商品在销售中显示在不同的iframe中,如下所示(例如我想要检查10件物品是否有售?)

目前,我的代码只处理一个项目,但我希望它处理10个项目并显示正在销售的项目。

此外,如果用户在页面中,我希望每10分钟对项目列表执行此销售检查过程,而无需用户重新加载页面。你们能告诉我这是怎么做到的吗?

<script src="http://anyorigin.com/jquery-1.4.2.min.js"></script>
<script>
$.getJSON('http://anyorigin.com/get?url=http://www.awebsite.com/item=book/&callback=?', function(data){
  var siteContents = data.contents;
  //writes to textarea
  //document.myform.outputtext.value = siteContents;
  var n=siteContents.search("This item is not on sale");
  alert("value of n:"+n);
  if(n=-1) {
    alert("item book is on sale. n:"+n);
    $('#ItemBookWrapper').show();
    //if the passed item is on sale display that item in a iframe if its not on sale go   //to next item. so at
  } else {
    alert("item:book is not on sale");
  }
});
</script>
</head>
<body>
  <div id="ItemBookWrapper" style="display:none">
    <iframe src='http://www.awebsite.com/item=book' height=200 width=200 style='border: none;'></iframe>
  </div>
  <br>

1 个答案:

答案 0 :(得分:0)

  

我想知道如何多次调用这个getjson并传递它们的值,如书,笔,纸

如果这是网站使用的格式......

http://www.awebsite.com/item=book/&callback=?

你得到这本书,笔是纸......你只是创建一个字符串

var getJSONurl = "http://anyorigin.com/get?url=http://www.awebsite.com/item=" + itemType +/&callback=?"

然后

$.getJSON(getJSONurl, function(data) {
   // your code
}
  

目前,我的代码只处理一个项目,但我希望它处理10个项目并显示那些正在销售的项目

看到JSON结构会对那个有很大帮助,但是,通常使用json你会使用......

obj = JSON.parse(data);

然后使用迭代器并循环遍历您拥有的所有数据对象。

  

如果用户在页面中,我希望每隔10分钟对此项目列表执行此销售检查流程,而无需用户重新加载页面

您使用的是(setInterval)[https://developer.mozilla.org/en-US/docs/DOM/window.setInterval]函数...

你在哪里使用

var interval = window.setInterval(yourJSONfunction(), 60000)

其中60000是以毫秒为单位的时间(600秒= 10分钟)。当页面加载时,它将每10分钟调用一次。您可以将变量设置为您想要调用的任何内容,无论是书籍,纸张,还是您。并用它来完成字符串。