起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2125|回复: 6

[处理中3] modelLoad方法不执行

[复制链接]

5

主题

10

帖子

30

积分

新手上路

Rank: 1

积分
30
QQ
发表于 2016-12-7 14:19:50 | 显示全部楼层 |阅读模式
modelLoad方法只会第一次加载执行,后面再进入页面不会再执行了。浏览器调试的时候没有问题,但是打包安装在手机上就出现这个问题。

5

主题

10

帖子

30

积分

新手上路

Rank: 1

积分
30
QQ
 楼主| 发表于 2016-12-7 14:21:15 | 显示全部楼层
现在出现这个问题,我在列表页点击一条数据,进入详情页,传参数是不一样的,但是详情页总是收到第一次的参数。。。抓狂
回复 支持 反对

使用道具 举报

发表于 2016-12-7 14:51:04 | 显示全部楼层
http://docs.wex5.com/wex5-ui-question-list-2021/
第二次以后会触发onActive 事件!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

5

主题

10

帖子

30

积分

新手上路

Rank: 1

积分
30
QQ
 楼主| 发表于 2016-12-7 15:10:46 | 显示全部楼层
好的谢谢,我去试试
回复 支持 反对

使用道具 举报

5

主题

10

帖子

30

积分

新手上路

Rank: 1

积分
30
QQ
 楼主| 发表于 2016-12-7 15:41:27 | 显示全部楼层
你说的没错的,但是我按照你说的同时把modelload方法和modelactive方法都写了,发现第二次打开页面的时候用this.getContext().getRequestParameter('data'); 获取到的参数并不是第二次传的参数,而还是第一次传的参数,我的代码如下:

列表页面中,点击一行,触发事件如下:
Model.prototype.li2Click = function(event){
                var sysid=event.bindingContext.$object.val("sysid");
                function getDevInfo(sysid){
                        var usertoken=localStorage.getItem("usertoken");
                        $.ajax({
                                "global" : false,
                                "type" : "post",
                                "dataType" : "json",
                                "async" : true,
                                "url" : serverUrl+"/appInterfaceAction.do?time="+new Date(),
                                "data" : {
                                        "method" : "appGetDeviceInfo",
                                        "sysid" : sysid,
                                        "token" : usertoken
                                },
                                "success" : function(message) {
                                        if(message.result===0){
                                                //alert(message.device.installAddress);
                                                var data=JSON.stringify(message.device);
                                                alert(data);
                                                justep.Shell.showPage("$UI/jinciquan/device/deviceInfo.w?data="+data);
                                        }else if(message.result==-1){
                                                //alert("发生错误:"+message.errorMessage);
                                                thisObj.comp("messageDialog").set({type:'OK',title:'发生错误',message:message.errorMessage});
                                                thisObj.comp("messageDialog").show();
                                        }else if(message.result==-2){
                                                //alert("不存在此设备");
                                                var data=JSON.stringify(message.device);
                                                justep.Shell.showPage("$UI/jinciquan/device/newDevice.w?data="+data);
                                        }
                                },
                                "error":function(xmlhttp,errormsg,ex){
                                        //alert("发生错误:"+errormsg);
                                        thisObj.comp("messageDialog").set({type:'OK',title:'发生错误',message:errormsg});
                                        thisObj.comp("messageDialog").show();
                                }
                        });
                }
                getDevInfo(sysid);
        };


详情页中,获取参数代码如下:
回复 支持 反对

使用道具 举报

5

主题

10

帖子

30

积分

新手上路

Rank: 1

积分
30
QQ
 楼主| 发表于 2016-12-7 15:43:25 | 显示全部楼层
Model.prototype.modelLoad = function(event){
                var data=this.getContext().getRequestParameter('data');
                if(data!=null&&data!=""){
                        //alert(data);
                        device=JSON.parse(data);
                        sysid=device.sysid;
                        wellName=device.wellname;
                        villageName=device.villageName;
                        this.comp('sysid').set({"value":device.sysid});//alert(this.comp('villageName'));
                        this.comp('villageName').set({"value":device.villageName});//alert(this.comp('wellname'));
                        this.comp('wellname').set({"value":device.wellname});//alert(this.comp('wellcode'));
                        this.comp('wellcode').set({"value":device.wellcode});//alert(this.comp('stcd'));
                        this.comp('stcd').set({"value":device.stcd});//alert(this.comp('wellcodeswj'));
                        this.comp('simid').set({"value":device.simid});//alert(this.comp('dongjing'));
                        this.comp('lxrdh').set({"value":device.lxrdh});//alert(this.comp('dongjing'));
                        this.comp('address').set({"value":device.address});//alert(this.comp('dongjing'));
                        //this.comp('supportType').set({"value":device.supportType.replace(","," ")});//alert(this.comp('dongjing'));
                        if(device.supportType.indexOf(this.getElementByXid("supportType").children[0].children[0].value)!=-1){
                                this.getElementByXid("supportType").children[0].children[0].checked=true;
                        }
                        if(device.supportType.indexOf(this.getElementByXid("supportType").children[1].children[0].value)!=-1){
                                this.getElementByXid("supportType").children[1].children[0].checked=true;
                        }
                        if(device.supportType.indexOf(this.getElementByXid("supportType").children[2].children[0].value)!=-1){
                                this.getElementByXid("supportType").children[2].children[0].checked=true;
                        }
                        this.comp('supportType').set({"disabled":true});
                        this.comp('installDate').set({"value":device.installDate});
                        this.comp('checkDate').set({"value":device.checkDate});
                       
                        if(device.latestStatus!=null&&device.latestStatus.statuscode=="1"){
                                this.comp('online_state').set({"value":"在线"});
                        }else{
                                this.comp('online_state').set({"value":"离线"});
                        }
                        if(device.latestStatus!=null&&device.latestStatus.warncode=="1"){
                                this.comp('warn_state').set({"value":"工作用交流电停电"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="2"){
                                this.comp('warn_state').set({"value":"蓄电池电压低"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="3"){
                                this.comp('warn_state').set({"value":"流量仪表故障"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="4"){
                                this.comp('warn_state').set({"value":"水泵故障"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="5"){
                                this.comp('warn_state').set({"value":"剩余水量下限报警"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="6"){
                                this.comp('warn_state').set({"value":"终端IC卡功能报警"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="7"){
                                this.comp('warn_state').set({"value":"定值控制报警"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="8"){
                                this.comp('warn_state').set({"value":"终端箱门状态报警"});
                        }else if(device.latestStatus!=null&&device.latestStatus.warncode=="9"){
                                this.comp('warn_state').set({"value":"多种报警"});
                        }else{
                                this.comp('warn_state').set({"value":"无报警"});
                        }
                        this.comp('last_data_time').set({"value":device.lastDataTime});
                }
        };

第二次列点击一行数据,我在列表页ajax返程结果代码中aler出来看了,没错是新的数据,但是在列表页获取到的还是第一次传的数据,请问这是怎么回事。
回复 支持 反对

使用道具 举报

发表于 2016-12-7 16:21:46 | 显示全部楼层
whatismvc 发表于 2016-12-7 15:43
Model.prototype.modelLoad = function(event){
                var data=this.getContext().getRequestParameter('data' ...

因为 这个页面缓存了,当然getRequestParameter 获取的参数肯定没变啊!
如果你想让这个页面每次都重新加载,也可以,跳转的时候,顺便把当前页关闭掉
http://docs.wex5.com/wex5-ui-question-list-2085
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-24 11:01 , Processed in 0.060739 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表