Depuis plusieurs jours, nous nous cognons la tête pour trouver la solution, mais nous ne sommes pas en mesure de comprendre pourquoi ce code ne fonctionne pas.Jquery Ajax ne fonctionne pas
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
});
Ce script sera appelé à partir de n'importe quelle autre page Web à partir de IE. Il va chercher les résultats de bing en utilisant bing api et ensuite les résultats seront ajoutés à la page d'origine.
Problème:
Ce script fonctionne quand nous l'ouvrir directement. Mais cela ne fonctionne pas quand il est appelé à partir d'une autre page.
Y a-t-il seulement un problème dans IE? Si vous regardez dans votre console de développeur, voyez-vous des demandes? – Manatok
Aussi, faites un peu de débogage. Si vous remplacez le rappel de succès par function() {alert (1)}, cela fonctionne-t-il? Découvrez le point exact auquel il échoue. – nicholaides
@nicholaides succès callback ne montre pas d'alerte lorsque nous l'exécutons à partir d'une autre page Web, sinon il fonctionne et montre les résultats de l'API de recherche bing. – user1254630