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

QQ登录

只需一步,快速开始

查看: 1079|回复: 3

[结贴] if为何不执行?

[复制链接]

4

主题

15

帖子

96

积分

初级会员

Rank: 2

积分
96
QQ
发表于 2015-1-18 11:30:20 | 显示全部楼层 |阅读模式
本帖最后由 nodaye 于 2015-1-18 11:36 编辑

建了一个概念,里面有三个关系f1,f2,f3,然后建了一个流程,活动环节1,2,3,然后使用简单流程向导生成了如下几个 w文件 1.jpg

我建了三个不同的角色,张三,李四,王五,分别只能打开各自己的三个环节1,2,3,现在我想张三打开环节1的页面mainActivity.w的时候f1显示波浪线必填,李四在打开环节2的页面2.W的时候f2显示波浪必填,王五在打开 3.w时,f3必填。
  现在我在mainActivity.w里的数据集datamain上右击编辑规则,把f1设为必填,保存后登陆张三,必填可以实现, f1这个字段必段填写如下图:
2.jpg 3.jpg

同样的设置,我将2.w里的f2字段设置必填,3.w里将f3必填,但问题来了,
李四按理说应该是f2必填才能流转,虽然红色波浪线也显示,但我什么都不填的话,我直接就点流转,立马就弹出对话框,选好李四后,就流给王五了,我用王五账号进去,待办任务也的确有李四的任务,打开后看到只有张三填有数据,而李四没有数据,没有数据,无法办公的。

在坛子上看到,说是要写几行代码,我是这样操作的。在2.w的流程组件的onBeforeAdvanceQuery 事件里写代码如下:
var org = justep.xbl('dataMain').getValue('f2');
debugger;
if (org = ""){alert('f2不能为空');event.cancel = true;};

设了断点,调式时,我看字段2的值也的确是能取到,为'''',因为什么都没输入如下图

4.jpg 当我2,就是关系f2里的值改为ddd时,断点调试时,也看到org的值也的确是取到了 ddd,如下图,

5.jpg

现在我想if (org = ""){alert('f2不能为空');event.cancel = true;};
就是当f2里的值是''''时,就弹出说f2不能为空,然后不往下走流程了。但就是不按我的if来,不管你 f2填不填数据,它照样可以流转,只有当我在f2里输入数据,然后再删除掉,然后再点流转的时候,才谈出数据集规则里设置的alert,说你这个不能为空,那为何我不填你反而不说,我填了再删掉你才说。这不没什么用吗?望 x5高人指点一下。非常感谢。

望高手指点。




4

主题

15

帖子

96

积分

初级会员

Rank: 2

积分
96
QQ
 楼主| 发表于 2015-1-18 15:13:25 | 显示全部楼层
自己顶,怎么没人解答啊。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35932
发表于 2015-1-19 10:14:16 | 显示全部楼层
1.在2和3的.w中model的onload事件中设置一下data的状态如下:
justep.xbl("dataDEMO_Order").setState(justep.xbl("dataDEMO_Order").getCurrentID(), justep.XData.STATE.EDIT);

2.if中的判断是否相等是== 不是=
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

4

主题

15

帖子

96

积分

初级会员

Rank: 2

积分
96
QQ
 楼主| 发表于 2015-1-19 14:20:14 | 显示全部楼层
好的,非常感谢,问题解决了。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-10 07:51 , Processed in 0.084821 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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