转自[url]http://pldream.com/b/?post=72[/url]
jQuery对JSONP的支持还是相当不错的,主要有三种方法
三种方法基本上大同小异。现在就以$.get为例
服务器端代码为:
一句就可以搞定了,跟普通的ajax的写法一样
另外两种也贴上
jQuery对JSONP的支持还是相当不错的,主要有三种方法
$.getJSON
$.ajax
$.get
三种方法基本上大同小异。现在就以$.get为例
服务器端代码为:
date_default_timezone_set('Asia/Shanghai');
$time = date('Y-m-d H:i:s', time());
$arr = array('name'=>urldecode($_GET['name']), 'time'=>$time);
echo $_GET['callback'] . '(' . json_encode($arr) . ')';
一句就可以搞定了,跟普通的ajax的写法一样
$.get(_url, {name: encodeURIComponent('张三')}, function (json) {
alert(json.name + ' : ' + json.time);
}, 'jsonp');
另外两种也贴上
function callJSONP2 (_url) {
$.ajax(
{
url: _url + '?name=张三',
dataType: 'jsonp',
jsonp: 'callback',
success: function (json) {
$.each(json, function (k, v) {
alert(k + ':' + v);
});
}
});
}
function callJSONP3 (_url) {
$.getJSON(_url + '?callback=?', {name: '张三'}, function (json) {
$.each(json, function (k, v) {
alert(k + ':' + v);
});
});
}