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

QQ登录

只需一步,快速开始

查看: 1242|回复: 5

[结贴] 在一个页面中显示两列图片信息,点击图片报错。

[复制链接]

7

主题

30

帖子

78

积分

初级会员

Rank: 2

积分
78
QQ
发表于 2016-5-9 16:16:42 | 显示全部楼层 |阅读模式
我在一页中显示两列图片,点击左侧图片程序正常,点击右侧图片,程序会正常跳转,但是会报出一个错误。请问这是什么原因呢? 效果图代码如下:
界面效果图:

1.jpg


界面设计图,在list的click事件中调用open方法实现跳转。JS代码如下:

3.jpg

        var $ = require("jquery");
        var justep = require("$UI/system/lib/justep");

        var Model = function() {
                this.callParent();
        };

        // 返回上一页
        Model.prototype.backBtnClick = function(event) {
                justep.Shell.closePage();
        };

        Model.prototype.getImageUrl = function(url) {
                return require.toUrl(url);
        };

        Model.prototype.open = function(event) {
                var row = event.bindingContext.$object;
                var url = "../2/template.w";
                //debugger;
                justep.Shell.showPage(require.toUrl(url), {
                        rowid : row.val("id")
                });
        };

        Model.prototype.dataCustomRefresh = function(event){
//      var url = require.toUrl("../2/data.json");
//      $.ajaxSettings.async = false;
//      $.getJSON(url,function(data){
//          event.source.loadData(data);
//      });
        };

        return Model;
});



运行后,点击左侧的图片,正常跳转,点击右侧的图片也正常跳转,但是出现如下错误。

2.jpg 4.jpg



3

主题

12

帖子

60

积分

初级会员

Rank: 2

积分
60
QQ
发表于 2016-5-9 16:22:29 | 显示全部楼层
Model.prototype.open = function(event) {
                var row = event.bindingContext.$object;
                var url = "../2/template.w";
                //debugger;
                var data = this.comp("data");
                justep.Shell.showPage(require.toUrl(url), {
                        //rowid : row.val("id")
                        rowid : data.getValue("id", row);
                });
        };
回复 支持 反对

使用道具 举报

7

主题

30

帖子

78

积分

初级会员

Rank: 2

积分
78
QQ
 楼主| 发表于 2016-5-9 18:58:55 | 显示全部楼层
IYABAO 发表于 2016-5-9 16:22
Model.prototype.open = function(event) {
                var row = event.bindingContext.$object;
    ...

看了你的代码,感觉好像找到我的问题了,是不是因为我一行是两列,所以不可以用行变量获得属性值?
回复 支持 反对

使用道具 举报

7

主题

30

帖子

78

积分

初级会员

Rank: 2

积分
78
QQ
 楼主| 发表于 2016-5-10 09:07:54 | 显示全部楼层
IYABAO 发表于 2016-5-9 16:22
Model.prototype.open = function(event) {
                var row = event.bindingContext.$object;
    ...

代码我修改如下:
        Model.prototype.open = function(event) {
                var row = event.bindingContext.$object;
                var url = "../2/template.w";
                var listData = this.comp('listData');
                //debugger;
                justep.Shell.showPage(require.toUrl(url), {
                        rowid : listData.getValue("id",row)
                });
        };


之前的报错不出现了,但是出现了一个空页面(如下图)和一个正常显示的详细页面,这是为何?
1.jpg

回复 支持 反对

使用道具 举报

发表于 2016-5-10 13:52:12 | 显示全部楼层
泡出泡泡了 发表于 2016-5-10 09:07
代码我修改如下:
        Model.prototype.open = function(event) {
                var row = event.bindingContext.$objec ...

什么意思??是多了一个空白页吗??按F12看看控制台有没有报错信息?
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

7

主题

30

帖子

78

积分

初级会员

Rank: 2

积分
78
QQ
 楼主| 发表于 2016-5-10 16:03:46 | 显示全部楼层
liangyongfei 发表于 2016-5-10 13:52
什么意思??是多了一个空白页吗??按F12看看控制台有没有报错信息?

问题我解决了。是我自己不小心在list上也加入了open事件,所以执行了两次。

PS:调试环境我不是很会用,按照教程debugger之后进行单步执行,有的时候就会跳入一个很复杂的子过程中出不来了,我想看哪里出问题也不知道应该怎么下手。请问有没有关于调试更详细的说明,谢谢!

回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 19:27 , Processed in 0.069376 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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