AJAX返回(含跨域)

§   CmsTop中所有的AJAX数据传递均使用JSON数据格式完成。

§   跨域解决方案采用了JquerygetJSON方法,使用jsoncallback来解决。

一个完整的示例如下:

前台页面发出AJAX请求,获取一篇文章的统计信息

var contentid = 123;
$(function(){
            $.getJSON(
                        'http://app.cmstop.dev/?app=system&controller=content&action=stat&jsoncallback=?&contentid='+contentid,
                        function(data){
                                   if(data){
                                               $('#pv').html(data.pv);
                                   }
                        }
            );
});

前台应用接收请求并返回需要的数据

function stat()
{
            $contentid = intval($_GET['contentid']);
 
            $pv = loader::model('pv');
            $data['pv'] = $pv->get($contentid);
 
            $comments = loader::model('comments');
            $data['comments'] = $comments->get($contentid);
 
            $data['islogin'] = setting('comment', 'islogin') ? 1 : 0;
 
            $data = $this->json->encode($data);
            echo $_GET['jsoncallback']."($data);";
}



Copyright ©2009 - 2014 CmsTop.Com.All rights reserved.
思拓合众