Crony
Crony
  • 发布:2015-02-02 16:34
  • 更新:2016-05-20 10:45
  • 阅读:2385

问题 根据id向服务器请求新闻详情

分类:MUI

新闻列表页面,点击列表进入对应的新闻详情页面,为什么在详情页面得不到数据呢?以下是列表页的代码

 <script type="text/javascript">  
            /**  
             * 处理链接点击事件  
             */  
            var detailPage = null;  
            (function($) {  
                $.plusReady(function() {  
                    detailPage = mui.preload({  
                    url:'news_view.html',  
                    id:'news_view.html'  
                });                       
                $('body').on('tap', 'a', function(e) {    
                    var id = this.getAttribute('id');     
                    mui.fire(detailPage,'detailId',{id:id});  
                    if (id) {                                          
                    if (window.plus) {  
                        $.openWindow({  
                        id: 'news_view.html',  
                        styles: {  
                            zindex: 99999  
                        }  
                        });  
                    } else {  
                        document.location.href = 'news_view.html';  
                    }  
                    }  
                });  
                });  
            })(mui);  
        </script>

以下是详情页的代码。点击列表alert('detail='+id);可以打印出来对应的ID;可详情页的无法获取对应的数据?,要怎么才能把详细数据在详情页展示出来?如新闻标题 发布时间 新闻内容等

<script type="text/javascript">  
            //添加newId自定义事件监听  
            window.addEventListener('detailId',function(event){  
            //获得事件参数  
            var id = event.detail.id;  
            //根据id向服务器请求新闻详情  
            //alert('detail='+id);  
            $.ajax({  
            type : "get",  
            url : "http://192.168.3.101/at/m/index.php?m=mapi&a=Newslist&callback=?",  
            dataType : "jsonp",  
            jsonp: "callback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(默认为:callback)  
            jsonpCallback:"success_jsonpCallback",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名  
            success:function(json){  
                var pic_url= "http://192.168.3.101/at/Uploads";  
                var news_list ="";  
                if(json.length>0){  
                    for (var i = 0; i < json.length; i++) {  
                    news_list +="<ul class='mui-table-view'><li class='mui-table-view-cell mui-media'><a href=''><img class='mui-media-object mui-pull-left' src='"+ pic_url + json[i].thumb +"'><div class='mui-media-body'><div class='title'>" + json[i].title +"</div><p class='mui-ellipsis'>" + json[i].before +"</p><p class='mui-time'>" + getLocalTime(json[i].create_time) +"</p></div></a></li></ul>";  
                    }  
                }else{  
                    news_list = "<li class=\"ui-btn ui-icon-arrow-r\"><h3>还没有内容哦</h3></li>";  
                }  
                $("#news_list").append(news_list);  
            },  
            error:function(){  
               alert('数据获取失败!');  
            }  
        });  

         });  
        </script>
2015-02-02 16:34 负责人:无 分享
已邀请:
DCloud_UNI_FXY

DCloud_UNI_FXY

目前不支持jsonp格式请求,建议换成json格式

goodstudy

goodstudy

json的也不支持吧 页面的内容不会改变的

地球人

地球人

json.length 属性错误一直为空

该问题目前已经被锁定, 无法添加新回复