$.ajax({
type : "GET",
dataType : "jsonp",
url : '/',
data : {}
success: function(obj){
}
});
我该如何使用$.ajax dataType: jsonp跨域传输数据?
$.ajax({
type : "GET",
dataType : "jsonp",
url : '/',
data : {}
success: function(obj){
}
});
我该如何使用$.ajax dataType: jsonp跨域传输数据?
$.ajax({
type : "GET",
dataType : "jsonp",
url : "http://domainname.com/json.php?callback=?", // ?callback=?
success: function(data){
// do stuff with data
}
});
PHP可能看起来像这样:
<?php
include('connect.php');
$sql = "SELECT id, name, items FROM tablename ORDER BY id ASC";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$rows[] = array(
"id" => $row['id'],
"name" => $row['name'],
"items" => $row['items']);
}
$json = json_encode($rows);
$callback = $_GET['callback'];
echo $callback.'('. $json . ')';
?>
将dataType
设置为jsonp
将允许jQuery自动在您的url
末尾添加额外的?callback=?
以指定回调函数。如果您像上面那样指定了自己的回调函数名称,它将使用您传递的callback
名称。如果您需要指定一个JSON回调函数名称,请使用jsonpCallback
属性,或将其添加为数据属性的参数。如需更多信息,请访问jQuery API Ajax:http://api.jquery.com/jQuery.ajax/。;
。