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

QQ登录

只需一步,快速开始

查看: 2564|回复: 10

[结贴] 如何在保存前删除按钮不只读,保存后删除按钮只读。

[复制链接]

53

主题

182

帖子

465

积分

中级会员

Rank: 3Rank: 3

积分
465
QQ
发表于 2014-2-16 22:55:56 | 显示全部楼层 |阅读模式
版本: X5.2.6 小版本号:
数据库: MySQL 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows XP 浏览器: Chrome
一个grid,新建一行,在保存之前,删除按钮不只读,可以删除。一旦保存后,删除按钮变只读。如何设置,求教!

310

主题

4938

帖子

4767

积分

论坛元老

Rank: 8Rank: 8

积分
4767
QQ
发表于 2014-2-17 08:22:37 | 显示全部楼层
可以这样做
先概念中增加一关系flag,默认值为0,当你保存后,把值改成1;
再设置删除按钮的readonly属性,获取flag的值,如果0为可读,如果1为只读

评分

参与人数 1 +7 收起 理由
jishuang + 7 赞一个!

查看全部评分

QQ:179785966
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2014-2-17 09:10:46 | 显示全部楼层
也通过判断data是否修改了,来决定删除按钮是否可用
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

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

使用道具 举报

53

主题

182

帖子

465

积分

中级会员

Rank: 3Rank: 3

积分
465
QQ
 楼主| 发表于 2014-2-17 13:50:37 | 显示全部楼层
zhaixin 发表于 2014-2-17 09:10
也通过判断data是否修改了,来决定删除按钮是否可用

yinlun的方法,我了解。您说的判断data是否修改,用哪一个方法。
回复 支持 反对

使用道具 举报

45

主题

4492

帖子

3960

积分

论坛元老

Rank: 8Rank: 8

积分
3960
QQ
发表于 2014-2-17 13:54:31 | 显示全部楼层
wolfeng 发表于 2014-2-17 13:50
yinlun的方法,我了解。您说的判断data是否修改,用哪一个方法。

getState(String id)
获得数据状态,返回值包括"new", "edit", "delete", 如果没有修改过返回""

评分

参与人数 1 +3 收起 理由
jishuang + 3 赞一个!

查看全部评分

向前进,向前进,我们……
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2014-2-17 13:55:31 | 显示全部楼层
data组件的isChanged方法

public boolean isChanged(string type)
判断data是否修改
  //判断data是否修改包括从data
justep.xbl('mainData').isChanged('all');
//判断data自身是否修改
justep.xbl('mainData').isChanged('self');
参数:
string type - 判断的类型all(全部数据包括从data数据状态,默认)/self(自己的数据,不包括从data)/slave(从data)
返回:
boolean
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

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

使用道具 举报

53

主题

182

帖子

465

积分

中级会员

Rank: 3Rank: 3

积分
465
QQ
 楼主| 发表于 2014-2-17 22:44:00 | 显示全部楼层
我的删除按钮跟data的一个计算关系关联,打开时那个计算关系的readonly是true()。 我在grid的RowClick添加了事件,用getState获取为new时,打算把删除按钮的只读属性设置成false,可是,怎么操作。

mainActivityDetail.griddetailRowClick = function(event){
       
                var rowid = event.rowId;
               
                var data=justep.xbl('detailData');
                 if(data.getState(rowid)=='new'){
               
                      这里面怎么写。
                       
                }
               
};
回复 支持 反对

使用道具 举报

310

主题

4938

帖子

4767

积分

论坛元老

Rank: 8Rank: 8

积分
4767
QQ
发表于 2014-2-18 08:18:35 | 显示全部楼层
wolfeng 发表于 2014-2-17 13:50
yinlun的方法,我了解。您说的判断data是否修改,用哪一个方法。

你的意思,一旦保存过得数据就不能修改是吧?
如果是这样的话,在readonly里加上data('dResult')/flag
在保存的时候,data.setValue("flag",1);//把falg的值改成1
QQ:179785966
回复 支持 反对

使用道具 举报

53

主题

182

帖子

465

积分

中级会员

Rank: 3Rank: 3

积分
465
QQ
 楼主| 发表于 2014-2-18 09:02:38 | 显示全部楼层
yinlun 发表于 2014-2-18 08:18
你的意思,一旦保存过得数据就不能修改是吧?
如果是这样的话,在readonly里加上data('dResult')/flag
在 ...

你的这个做法我也想过,完全可行。我就是较了个真,想知道不用添加关系,能不能用data的方法来实现。谢谢。顺便问一下,有没有用js修改计算关系的只读属性的方法。
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2014-2-18 09:10:37 | 显示全部楼层
计算关系的只读属性 写成data('dResult')/flag=1,然后,使用js修改data('dResult')/flag里面的值
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 06:05 , Processed in 0.061981 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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