html5中文学习网

您的位置: 首页 > 网站及特效实例 > jquery特效 » 正文

js对ajax返回数组的处理介绍_编程语言综合

[ ] 已经帮助:人解决问题

 本篇文章主要是对js对ajax返回数组的处理进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助HBuHTML5中文学习网 - HTML5先行者学习网

引言:
ajax异步传输,可以传输字符串,但是数组这样的数据,就不太好传递了,这个时候怎么办呢?
 
答案是可以通过json来处理,后台将数据数据进行json编码!
 
然后客户端,通过js来进行解析。
 
这样问题就解决了!json是一种很好的数据格式!
 
我做的是异步判断某堂课是否处于上课状态,会从后台接口中获取数组数据!共四堂课,
 
代码如下:
 
 代码如下:
function ajaxcheckedlessonsAction(){
        //3583 语文 8班 
        //1500 语文 9班 
        //2717 物理 8班
        //1612 物理 9班
        $whereLessons = array();
        $whereLessons['lessons.id IN(?)'] = array(3583, 1500, 2717, 1612);
        $daoLessons = new dao_lessons();
        $alllessons = $daoLessons->getLessons($whereLessons);
        //print_r($alllessons);exit;
        $lessonsChecked = array();
        foreach ($alllessons as $lessons) {
            if ($lessons['id'] == 3583) {
                $lessonsChecked['8yuwen'] = $this->verifyCheckedLessons($lessons['startime'], $lessons['endtime']);
            } elseif ($lessons['id'] == 1500) {
                $lessonsChecked['9yuwen'] = $this->verifyCheckedLessons($lessons['startime'], $lessons['endtime']);
            } elseif ($lessons['id'] == 2717) {
                $lessonsChecked['8wuli'] = $this->verifyCheckedLessons($lessons['startime'], $lessons['endtime']);
            } elseif ($lessons['id'] == 1612) {
                $lessonsChecked['9wuli'] = $this->verifyCheckedLessons($lessons['startime'], $lessons['endtime']);
            }
        }
        $json = json_encode($lessonsChecked);
        echo $json;
    }
 
接口处理数据,将数据json化,
 
前台对json数据进行解析
 
 代码如下:
//进入页面就进行的处理
        $.ajax({
            type: "POST",
            url:"/default/index/ajaxcheckedlessons",
            data:"",
            success:function(response){
                if(response){
                    var data = eval('('+response+')');
                    if(data['8yuwen']){
                      $("#8yuwen").attr("style","color:red;");
                    }else{
                      $("#8yuwen").attr("style","");  
                    }
                    if(data['8wuli']){
                      $("#8wuli").attr("style","color:red;");
                    }else{
                      $("#8wuli").attr("style","");  
                    }
                    if(data['9yuwen']){
                      $("#9yuwen").attr("style","color:red;");
                    }else{
                      $("#9yuwen").attr("style","");  
                    }
                    if(data['9wuli']){
                      $("#9wuli").attr("style","color:red;");
                    }else{
                      $("#9wuli").attr("style","");  
                    }
                }else{
                    alert("error");
                }
            }
        });
 
红色部分就是json的核心代码。
 
这样就完成了数组的处理!异步数组数据传递!
 
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助