2017-06-06 2 views
-1

Je rencontre un problème lors de l'utilisation de l'ajax d'origine croisée.L'ajax d'origine croisée ne fonctionne pas

Je sais que c'est une question commune, mais n'a pas encore trouvé de solution.

$.ajax({  
    type: "GET", 
    url: url, 
    data: {id:id}, 
    dataType: "jsonp", 
    crossDomain: true, 
    contentType: "application/jsonp; charset=utf-8", 
    async: false, 
    success: fnsuccesscallbackk, 
    error: function(xhr, error){ 
    alert(error); 
    }, 
    jsonpCallback: fnsuccesscallback 
}); 

function fnsuccesscallback(data){ 
    alert(data) 
} 

... mais obtenir undefined response in callback function.

Y a-t-il quelque chose qui ne va pas dans ce que je fais?

+0

Merci d'avoir modifié ce contenu. – Neera

Répondre

0

Après beaucoup de RND finalement j'ai eu la solution de ceci.

Ajax function: 
$.ajax({  
     type:"GET", 
     url:'https://www.url.com/welcome/test_js', 
     data:{name:'xyz'}, 
     crossDomain:true, 
     dataType: "jsonp", 
     jsonp: 'fnsuccesscallback', 
     success: function(data) { 
       alert(data.name) 
     } 
}); 


In the Php function: 
function test_js() { 
    echo $_GET['fnsuccesscallback'] . "(" . json_encode($_GET) . ")"; 
}