几天来,我们一直在寻找解决方案,但我们无法弄清楚为什么此代码无法正常工作。Jquery Ajax无法正常工作
var bing_url='http://api.search.live.net/json.aspx?JsonType=callback&JsonCallback=?&Appid=[OurApp Id]&query='+keyword+'&sources=web';
$.ajax({
type: "GET",
url: bing_url,
dataType:"jsonp",
success: function(response)
{
$("#result").html('');
if(response.SearchResponse.Web.Results.length)
{
$.each(response.SearchResponse.Web.Results, function(i,data)
{
var title=data.Title;
var dis=data.Description;
var url=data.Url;
var finall="<div class='webresult'><div class='title'><a href='"+url+"'>"+title+"</a></div><div class='desc'>"+dis+"</div><div class='url'>"+url+"</div></div>";
$("#result").append(final); // Result
});
parentwin.document.getElementsByTagName("body").item(0).innerHTML += final;
}
else
{
$("#result").html("<div id='no'>No Results</div>");
}
} //success
});
该脚本将从IE的任何其他网页中调用。它将使用bing api从bing中搜索结果,然后结果将被追加到原始页面。
问题:
此脚本工作时,我们直接打开它。但是从其他页面调用它时不起作用。
在IE中只有一个问题吗?如果你看看你的开发者控制台,你是否看到任何要求? – Manatok 2012-03-07 12:42:27
另外,做一些调试。如果用函数(){alert(1)}替换成功回调,它是否工作?找出失败的确切点。 – nicholaides 2012-03-08 05:51:12
@nicholaides成功回调没有显示警报,当我们从其他网页运行它,否则它正在工作,并显示从搜索API的结果。 – user1254630 2012-03-08 08:59:00