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

QQ登录

只需一步,快速开始

查看: 3274|回复: 8

[结贴] 3.1.2版本遇到的问题,不知道怎么解决

[复制链接]

150

主题

599

帖子

1205

积分

金牌会员

Rank: 6Rank: 6

积分
1205
QQ
发表于 2015-9-8 15:16:35 | 显示全部楼层 |阅读模式
版本: BeX5V3.1 小版本号: 2
数据库: MySQL 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows 7 浏览器: IE10
1、3.1版本之前,根据id获取组件的方法是justep.xbl("id"),版本升级后的方法是什么?
     是this.comp("id")吗?
    但是使用windowReceiver1组件时,采用了this.comp('windowReceiver1').windowEnsure();
     提示:对象不支持“comp”属性或方法;
      1.png
2、UI2增加了dataTable组件,这个组件获取当前行id,怎么获取?
      var crow = categoryDetail.getCurrentRow();
      var id = categoryDetail.getRowID(crow);
      这个crow,id分别是什么,alert输出后和期待的不一样;
     还有说:   var id = data.getRowID(event.bindingContext.$object);这样也可以获取到id,但是我在使用时会报错说get不支持;
2.png

3、dataTble在saveData的方法上,怎么使用?
      var crow = data.getCurrentRow();
      var id = data.getRowID(crow);   
      在使用data.setValue("fIsDelete", 1,id);时,报错:
1.png

然后使用在使用data.setValue("fIsDelete", 1,crow );不报错了,但是数据保存不了;


4、自定义函数怎么写?
我在datatable的cellRender时间中渲染了如下按钮:
event.html=' <input type="button"  class="btn x-blue btn-xs" value="查看"  />';
1.png
然后在js里写了如下function,但是一直报错说showDescription方法未定义;
然后换成这样的写法:
Model.prototype.showDescription= function(event){
  this.comp('windowDialog2').open({
   data:{
    description:description
   }
  });
};
1.png


同样还是报错说showDescription方法未定义;

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2015-9-8 18:13:41 | 显示全部楼层
1.5.3系列的版本是xid
  this.comp("XX")获取,但是要看这个this是model才可以
   报错把具体的代码发一下看看

2.当前行id是data上的方法
   getRowID (Data.Row row,行对象) 获取data的行Id,默认获取当前行的id,参数就是你要获取那个行的id就把row传进来,如果要获取当前行的id就不用传参数了

   要看你的event.bindingContext.$object返回的是row吗,这个不是随便那个事件中都可以这样写的

3.操作数据都是data的,所以保存数据调用的是data上的saveData
  确认关系是否存在

4.参考
  http://doc.wex5.com/?p=4560#5.3


不同的问题请分开发帖,方便查看和回复
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

150

主题

599

帖子

1205

积分

金牌会员

Rank: 6Rank: 6

积分
1205
QQ
 楼主| 发表于 2015-9-9 16:08:38 | 显示全部楼层
jishuang 发表于 2015-9-8 18:13
1.5.3系列的版本是xid
  this.comp("XX")获取,但是要看这个this是model才可以
   报错把具体的代码发一下 ...

第一个问题仍未解决,具体代码如下:
1.png
关闭窗口的时候报错说
1.png

对象不支持“comp”属性或方法
编码:
原因:
[url=]隐藏详细[/url]
TypeError: 对象不支持“comp”属性或方法    at callback (http://localhost:8080/x5/$v4a002b2f21f64a32b935aa617734a571$lzh_CN$sdesktop$dpc/UI2/shop/shop/process/categoryManager/categoryDetatil.js:57:6)   at h (http://localhost:8080/x5/$v582093d494f44816938266ef2910a200$lzh_CN$sdesktop$dpc/UI2/system/biz.common.min.js:12:11561)   at f (http://localhost:8080/x5/$v294b71bc8ab14fa494168dd10fb7bcb2$lzh_CN$sdesktop$dpc/UI2/system/core.min.js:36:57133)   at l.add (http://localhost:8080/x5/$v294b71bc8ab14fa494168dd10fb7bcb2$lzh_CN$sdesktop$dpc/UI2/system/core.min.js:36:57450)   at _sendRequest (http://localhost:8080/x5/$v582093d494f44816938266ef2910a200$lzh_CN$sdesktop$dpc/UI2/system/biz.common.min.js:12:11908)   at Request.sendRequest (http://localhost:8080/x5/$v582093d494f44816938266ef2910a200$lzh_CN$sdesktop$dpc/UI2/system/biz.common.min.js:12:12240)   at $var._sendBizRequest (eval code:1:490)   at Request.sendBizRequest (http://localhost:8080/x5/$v582093d494f44816938266ef2910a200$lzh_CN$sdesktop$dpc/UI2/system/biz.common.min.js:12:14462)   at Model.prototype.button1Click (http://localhost:8080/x5/$v4a002b2f21f64a32b935aa617734a571$lzh_CN$sdesktop$dpc/UI2/shop/shop/process/categoryManager/categoryDetatil.js:30:3)   at fire (http://localhost:8080/x5/$v294b71bc8ab14fa494168dd10fb7bcb2$lzh_CN$sdesktop$dpc/UI2/system/core.min.js:36:237257)

回复 支持 反对

使用道具 举报

150

主题

599

帖子

1205

积分

金牌会员

Rank: 6Rank: 6

积分
1205
QQ
 楼主| 发表于 2015-9-9 17:02:57 | 显示全部楼层
chaierkid 发表于 2015-9-9 16:08
第一个问题仍未解决,具体代码如下:

关闭窗口的时候报错说

自定义函数,我就想写一个
function xxx(){

}
这样不可以么?
如果我不是在grid中渲染的,我自己写一个事件,不行么?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2015-9-10 10:44:46 | 显示全部楼层
chaierkid 发表于 2015-9-9 17:02
自定义函数,我就想写一个
function xxx(){

1.this.comp看你的代码应该是在回调事件中写的,回调事件中this的已经不是外层的model的,去获取组件肯定会报错
  在回调函数外面定义一个变量如var me = this;
然后用me.comp会调用

2.自定义函数可以是1楼发的那样定义,但是在调用的时候不能在onCellRender直接写onClick去调用
   要通过样式,然后在rowClick中判断样式去调用
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

150

主题

599

帖子

1205

积分

金牌会员

Rank: 6Rank: 6

积分
1205
QQ
 楼主| 发表于 2015-9-10 10:56:34 | 显示全部楼层
jishuang 发表于 2015-9-10 10:44
1.this.comp看你的代码应该是在回调事件中写的,回调事件中this的已经不是外层的model的,去获取组件肯定 ...

第一个问题解决了,应该是那个this代表的不一样,所以在function外定义了this,就可以了;


第二个问题是:我现在在table的td里添加了一个按钮A,然后按钮A的点击事件是,在table里再添加一行,然后也有按钮B,按钮B的点击事件和A的事件是一样的,但是现在A的事件正常,B的事件不生效,我就想根据$("button").bind("click",function(){
   
});这样的标准方法,给所有id为button的按钮添加点击事件,试试可不可以。。。。
您有更好的方法么?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2015-9-10 14:39:31 | 显示全部楼层
B是在A事件中动态生成的吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

150

主题

599

帖子

1205

积分

金牌会员

Rank: 6Rank: 6

积分
1205
QQ
 楼主| 发表于 2015-9-14 10:34:29 | 显示全部楼层
jishuang 发表于 2015-9-10 14:39
B是在A事件中动态生成的吗?

是的。。。。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2015-9-14 16:47:02 | 显示全部楼层
动态创建参考http://doc.wex5.com/?p=4202
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-2 03:57 , Processed in 0.069264 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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