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

QQ登录

只需一步,快速开始

查看: 2513|回复: 4

[处理中6] justep.Util.confirm 回调无法使用model里面的函数

[复制链接]

50

主题

199

帖子

820

积分

高级会员

Rank: 4

积分
820
QQ
发表于 2015-11-19 22:45:50 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
本帖最后由 2286683959 于 2015-11-19 23:31 编辑

        justep.Util.confirm("确认执行吗?", this.test,alert("取消了!"));Model.prototype.test=function(){
    this.comp('mainData').val('fName',"测试姓名");
};


代码的运行结果是:后面的回调函数:this.test,里面的this.comp语句不管用了。提示this.comp is not a function。
这种问题怎么解决???
我知道this已经不是原来的this了,可怎么获取呢?

能不能改成,选择确定,返回true,选择取消,返回false类的模式。回调函数太麻烦了,还不能加参数!!!!。




91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2015-11-20 13:42:14 | 显示全部楼层
如下这样定义
var me = this;
Model.prototype.test=function(){
    me.comp('mainData').val('fName',"测试姓名");
};
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

50

主题

199

帖子

820

积分

高级会员

Rank: 4

积分
820
QQ
 楼主| 发表于 2015-11-20 17:06:53 | 显示全部楼层
本帖最后由 2286683959 于 2015-11-20 17:11 编辑
jishuang 发表于 2015-11-20 13:42
如下这样定义
var me = this;
Model.prototype.test=function(){

不行的,你试试就知道了。会提示找不到me。
追踪发现,当回调函数执行时,其this已经到了window。已经跑出了环境外,不管是局部变量还是全局变量,已经获取不了了。
回复 支持 反对

使用道具 举报

50

主题

199

帖子

820

积分

高级会员

Rank: 4

积分
820
QQ
 楼主| 发表于 2015-11-20 17:13:05 | 显示全部楼层
jishuang 发表于 2015-11-20 13:42
如下这样定义
var me = this;
Model.prototype.test=function(){

没办法了,自己写一个confirm算了。系统的confirm无法传递参数,只能传递一个回调函数。自己写一个可传参的吧。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2015-11-20 18:20:06 | 显示全部楼层

你好楼主,这个问题需要我在本地环境进行问题重现,所以会花费较长时间,请你耐心等待,我完成后会第一时间反馈结果,谢谢!
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-4 06:11 , Processed in 0.065737 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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