首页 > javascript知识库 > javascript中的ajax跨域取值问题

javascript中的ajax跨域取值问题

2013年6月22日 发表评论 阅读评论

做了一个功能,利用ajax效果,但是ajax的处理页面ajax.php非常消耗资源,所以找了个免费空间把ajax.php导入进去,这样就可以节省自身服务器资源,别人光有一个ajax.php其实也没用,对吧,呵呵。
自己的服务器域名是1.aaa.com(二级域名),但是绑定在别人上面的是1.bbb.com
本地测试的程序都没有任何问题,但是为什么上传ajax.php到1.bbb.com上就无法读取数据呢?
百度了一下,原来啊,是ajax跨域取值的问题,这总算找到原因了,找到原因就好解决了啊,下面找到的解决办法:
定义一个函数,用来调取ajax:
function jsonCallBack(url,callback){
$.getScript(url,function(){
callback(json);
});
}
发送ajax请求使用:
jsonCallBack(url,function(json){alert(json.message)});
其中url可以直接使用”ajax.php?act=”中使用参数
然后呢,就到处理ajax跨域的php文件了:
function returnJSON($msg){
$json=json_encode(array(‘message’=>$msg));
echo “var json=$json;”;
//一定要这样定义输出最后的JSON数据,这是利用JS的闭包特性
exit();
}
这样只要调用函数returnJSON即可,这样整体就搞定了ajax跨域取值的问题

  1. 本文目前尚无任何评论.
您必须在 登录 后才能发布评论.
css.php