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

QQ登录

只需一步,快速开始

查看: 9498|回复: 11

[结贴] 有个需求,求大神解决。

[复制链接]

188

主题

598

帖子

1210

积分

金牌会员

Rank: 6Rank: 6

积分
1210
QQ
发表于 2013-9-4 15:03:50 | 显示全部楼层 |阅读模式
版本: X5.2.5 小版本号:
数据库: MySQL 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
有这么一个需求。如图,起始时间<本年1月  或 截至时间>本年12月。只有符合这个条件,才能填写跨年项目所处进展阶段。
这个该怎么做呢,求大神详细解说,谢谢。
as.jpg
发表于 2013-9-4 15:33:15 | 显示全部楼层
您需要在“跨年项目所处进展阶段”这一列添加只读规则
Q8LSA)W6AIB2[UWVBJ65N99.jpg
自己写js方法,在方法中判断得到返回值为true或false,在readonly中用call调用这个方法
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

117

主题

771

帖子

1670

积分

金牌会员

Rank: 6Rank: 6

积分
1670
发表于 2013-9-4 15:34:54 | 显示全部楼层
在gridselect 事件onkeydown事件判断:

if  (起始时间>本年1月  and   截至时间<本年12月)
justep.xbl('gridSelect组件的id').setDisabled(true);
}
本人非X5官方技术,回复内容仅供参考。
回复 支持 反对

使用道具 举报

发表于 2013-9-4 15:54:18 | 显示全部楼层
smarter 发表于 2013-9-4 15:34
在gridselect 事件onkeydown事件判断:

if  (起始时间>本年1月  and   截至时间

应该也可以的,但是要加上else,setDisabled(fasle)
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

188

主题

598

帖子

1210

积分

金牌会员

Rank: 6Rank: 6

积分
1210
QQ
 楼主| 发表于 2013-9-4 15:54:42 | 显示全部楼层
liangyongfei 发表于 2013-9-4 15:33
您需要在“跨年项目所处进展阶段”这一列添加只读规则

自己写js方法,在方法中判断得到返回值为true或fals ...

不会写,能麻烦一下给写出来么,谢谢。
回复 支持 反对

使用道具 举报

188

主题

598

帖子

1210

积分

金牌会员

Rank: 6Rank: 6

积分
1210
QQ
 楼主| 发表于 2013-9-4 15:55:53 | 显示全部楼层
smarter 发表于 2013-9-4 15:34
在gridselect 事件onkeydown事件判断:

if  (起始时间>本年1月  and   截至时间

这个时间几几年,得获取服务器时间把。
回复 支持 反对

使用道具 举报

117

主题

771

帖子

1670

积分

金牌会员

Rank: 6Rank: 6

积分
1670
发表于 2013-9-4 16:09:23 | 显示全部楼层
本帖最后由 smarter 于 2013-9-4 16:22 编辑
谁用谁知道 发表于 2013-9-4 15:55
这个时间几几年,得获取服务器时间把。

var dataObject = justep.System.datetime();
//获取当前日期
var ddate = justep.Date.toString(dataObject,justep.Date.STANDART_FORMAT_SHOT);
var datet=new Date(ddate);
var year= datet.getFullYear();获取年
      month = datet.getMonth()+1; 获取月


//justep.System.datetimeString(); 和 justep.System.datetime();  用来获取服务端系统时间
//new Date() 用来获取客户端系统时间
本人非X5官方技术,回复内容仅供参考。
回复 支持 反对

使用道具 举报

188

主题

598

帖子

1210

积分

金牌会员

Rank: 6Rank: 6

积分
1210
QQ
 楼主| 发表于 2013-9-4 16:23:22 | 显示全部楼层
smarter 发表于 2013-9-4 16:09
var dataObject = justep.System.datetime();
//获取当前日期
var ddate = justep.Date.toString(dataObj ...
  1. var startDate = justep.xbl("dataMain").getValue("fXMQSNY");
  2.         var endtDate = justep.xbl("dataMain").getValue("fXMWCNY");
  3.         //var serviceCurrentDate = justep.Date.toString(justep.System.datetime(),
  4.         var dataObject = justep.System.datetime();//获取当前日期
  5.         //alert(serviceCurrentDate);
  6.         var ddate = justep.Date.toString(dataObject,justep.Date.STANDART_FORMAT_SHOT);
  7.     var datet=new Date(ddate);
  8.     var year= datet.getFullYear();
  9.       month = datet.getMonth()+1;
  10.         if (本年1月 > startDate && 本年12月 <= endtDate) {
  11.        
  12.                 return false;
  13.         }

  14.         else
  15.                 return true;
复制代码
还得麻烦一下,怎么修改呢???
回复 支持 反对

使用道具 举报

117

主题

771

帖子

1670

积分

金牌会员

Rank: 6Rank: 6

积分
1670
发表于 2013-9-4 16:28:24 | 显示全部楼层
谁用谁知道 发表于 2013-9-4 16:23
还得麻烦一下,怎么修改呢???

startdate与endtdate是什么类型数据?数据做比较就行了。

if (本年1月 > startDate && 本年12月 <= endtDate) {
justep.xbl('gridSelect组件的id').setDisabled(true);
}else{
justep.xbl('gridSelect组件的id').setDisabled(fasle);
}
本人非X5官方技术,回复内容仅供参考。
回复 支持 反对

使用道具 举报

188

主题

598

帖子

1210

积分

金牌会员

Rank: 6Rank: 6

积分
1210
QQ
 楼主| 发表于 2013-9-4 16:30:40 | 显示全部楼层
smarter 发表于 2013-9-4 16:28
startdate与endtdate是什么类型数据?数据做比较就行了。

if (本年1月 > startDate && 本年12月  ...

IF以上的代码对不,,
if (本年1月 > startDate && 本年12月 <= endtDate) {
还有本年1月  还用转换么,该怎么写?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-9 22:34 , Processed in 0.064785 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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