87,920
社区成员
发帖
与我相关
我的任务
分享
$.ajax({
type: "get",
async: false,
url: "https://"+row[0]+"/classes/action/middle.php",
data: {getdn:true},
dataType: "jsonp",
jsonp: "callback",
jsonpCallback:'?',
complete: function (XMLHttpRequest, textStatus){
var data = XMLHttpRequest.responseText;
alert("data:"+data);
alert('error: ' + textStatus);
},
success: function(data){
var json = $.parseJSON(data);
alert("json:"+json);
alert("data:"+data);
},
error:function(XHR, textStatus, errorThrown){
alert('error: ' + errorThrown);
}
});//end ajax
$.ajax({
type: 'GET',
async: false,
url: 'http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx/getCountryCityByIp?callback=?',
data:{theIpAddress:host_ip[0]},
dataType: 'jsonp',
jsonp: "callback",
success: function(msg){
alert(JSON.stringify(msg));
},
error:function(XMLHttpRequest, textStatus, errorThrown){
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(XMLHttpRequest.responseText);
alert(textStatus);
alert(errorThrown);
console.log(textStatus);
}
});
将jsonpCallback:'?',行注释掉,jsonp会随机生成函数名
$.ajax({
type: "get",
async: false,
url: "https://"+row[0]+"/classes/action/middle.php",
data: {getdn:true},
dataType: "jsonp",
jsonp: "callback",
jsonpCallback:'?', //这里为后台返回的动态函数
success: function(data){
//alert("data:"+data[0].did); (success)
showDomainList(data); //处理返回结果
},
error:function(XHR, textStatus, errorThrown){
return false;
}
});//end ajax
#返回值作为jsonp回调函数的参数
if(!empty($_GET['getdn'])){
$jsonp = $_GET['callback']; //获取jsonp回调函数的函数名,即url中callback=后面的值
$domains = $mysql->getDomains();
if(empty($domains)){
echo false;
}else{
$dn = json_encode($domains);
}
echo $jsonp.'('.$dn.')'; //这里要返回jsonp的 回调函数名(参数)
}//end if