方案有很多,推荐两个:
一、JSONP 服务器返回 callback({"id": "3", "name": "leisure"}); 复制代码 代码如下:
function callback(data) {
alert(data);
}
二、window.name
1、 服务器返回 复制代码代码如下:
window.name='{"id":"3", "name":"leisure"}';
2、定义一个iframe,添加onload事件
var load = false;
function iLoad() {
if(load == false) {
// 同域处理,请求后会再次重新加载iframe
document.getElementById('iframe1').contentWindow.location = '/';
load = true;
} else {
// 获取window.name的内容,注意必须进行同域处理后方可访问!
var data = document.getElementById('iframe1').contentWindow.name;
alert(data); // {"id":"3", "name":"leisure"}
load = false;
}
}
3、定义一个form,设置form的target为iframe的id,然后提交form 复制代码代码如下:
<button type="submit" value="submit" />