WdatePicker时间控件联动选择

 1   $("#txtStartTime").bind("click focus", function () {
 2                 var endtimeTf = $dp.$(‘txtEndTime‘);
 3                 WdatePicker({
 4                     skin: dateSkin,
 5                     maxDate: ‘#F{$dp.$D(\‘txtStartTime\‘)}‘,
 6                     dateFmt: "yyyy-MM-dd HH:mm:ss",
 7                     onpicked: function () { endtimeTf.focus(); }
 8                 });
 9             });
10             $("#txtEndTime").bind("click focus", function () {
11                 //这里设置了最大日期为当前日期,如果不需要则把maxDate:‘%y-%M-%d‘去掉
12                 //WdatePicker({ skin: dateSkin, maxDate: ‘%y-%M-%d‘, minDate: ‘#F{$dp.$D(\‘baojiakaishishijian\‘)}‘ });
13                 WdatePicker({
14                     skin: dateSkin,
15                     minDate: ‘#F{$dp.$D(\‘txtStartTime\‘)}‘,
16                     dateFmt: "yyyy-MM-dd HH:mm:ss"
17                 });
18             });

上面的可控制结束时间大于开始时间,可精确到秒

===============================================================

下面的一个可控制结束时间在一周内

 1 $("#txtStartTime").bind("click focus",
 2         function() {
 3             WdatePicker({
 4                 maxDate: "#F{$dp.$D(‘txtEndTime‘);}",
 5                 dateFmt: "yyyy-MM-dd HH:mm",
 6                 onpicked: function(Ag) {
 7                     var Ah = StrToDate(Ag.cal.getDateStr());
 8                     var Ai = StrToDate($("#txtEndTime").val());
 9                     var Af = Ai.dateDiff(Ah, "d");
10                     if (Af > 7) {
11                         $("#txtEndTime").val(Ah.DateAdd("d", 7).format("yyyy-MM-dd HH:mm"))
12                     }
13                 }
14             })
15         });
16         $("#txtEndTime").bind("click focus",
17         function() {
18             WdatePicker({
19                 minDate: "#F{$dp.$D(‘txtStartTime‘)}",
20                 maxDate: "#F{$dp.$D(‘txtStartTime‘,{d:7});}",
21                 dateFmt: "yyyy-MM-dd HH:mm"
22             })
23         });
24         WdatePicker({
25             eCont: "DataControl",
26             onpicked: function(Af) {
27                 $("#starOption").fadeOut();
28                 $("#txtStartTime").val(Af.cal.getDateStr() + " 00:00");
29                 $("#txtEndTime").val(Af.cal.getDateStr() + " 23:59");
30                 if ($("#selCarBrand_hidden").length > 0 && $.trim($("#selCarBrand_hidden").val()) != "") {
31                     v(true)
32                 }
33             }
34         });
  1 Date.prototype.format = function(A) {
  2     var B = {
  3         "M+": this.getMonth() + 1,
  4         "d+": this.getDate(),
  5         "h+": this.getHours(),
  6         "H+": this.getHours(),
  7         "m+": this.getMinutes(),
  8         "s+": this.getSeconds(),
  9         "q+": Math.floor((this.getMonth() + 3) / 3),
 10         "S": this.getMilliseconds()
 11     };
 12     if (/(y+)/.test(A)) {
 13         A = A.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length))
 14     }
 15     for (var C in B) {
 16         if (new RegExp("(" + C + ")").test(A)) {
 17             A = A.replace(RegExp.$1, RegExp.$1.length == 1 ? B[C] : ("00" + B[C]).substr(("" + B[C]).length))
 18         }
 19     }
 20     return A
 21 };
 22 Date.prototype.dateDiff = function(C, D) {
 23     var B = 1;
 24     if (!C) {
 25         return "必须是日期对象"
 26     }
 27     var A = this.getTime() - C.getTime();
 28     switch (D) {
 29     case "ms":
 30         B = 1;
 31         break;
 32     case "s":
 33         B = 1000;
 34         break;
 35     case "m":
 36         B = 60 * 1000;
 37         break;
 38     case "h":
 39         B = 60 * 60 * 1000;
 40         break;
 41     case "d":
 42         B = 24 * 60 * 60 * 1000;
 43         break
 44     }
 45     return Math.floor(A / B)
 46 };
 47 Date.prototype.DateAdd = function(C, A) {
 48     var B = this;
 49     switch (C) {
 50     case "s":
 51         return new Date(Date.parse(B) + (1000 * A));
 52     case "m":
 53         return new Date(Date.parse(B) + (60000 * A));
 54     case "h":
 55         return new Date(Date.parse(B) + (3600000 * A));
 56     case "d":
 57         return new Date(Date.parse(B) + (86400000 * A));
 58     case "w":
 59         return new Date(Date.parse(B) + ((86400000 * 7) * A));
 60     case "q":
 61         return new Date(B.getFullYear(), (B.getMonth()) + A * 3, B.getDate(), B.getHours(), B.getMinutes(), B.getSeconds());
 62     case "M":
 63         return new Date(B.getFullYear(), (B.getMonth()) + A, B.getDate(), B.getHours(), B.getMinutes(), B.getSeconds());
 64     case "y":
 65         return new Date((B.getFullYear() + A), B.getMonth(), B.getDate(), B.getHours(), B.getMinutes(), B.getSeconds())
 66     }
 67     return B
 68 };
 69 Date.prototype.Init = function(A) {
 70     return new Date(A.replace(/-/g, "/"))
 71 };
 72 Date.StrToDate = function(A) {
 73     return new Date(A.replace(/-/g, "/"))
 74 };
 75 Date.FormatTime = function(A) {
 76     var H = "";
 77     A = Math.round(A);
 78     var B = A % 60;
 79     if (B > 0) {
 80         H = B + "秒";
 81         A -= B
 82     }
 83     if (A >= 60) {
 84         var J = A / 60;
 85         var E = J % 60;
 86         J -= E;
 87         H = E + "分" + H;
 88         if (J >= 60) {
 89             var I = J / 60;
 90             var C = I % 24;
 91             I -= C;
 92             H = C + "时" + H;
 93             if (I >= 24) {
 94                 var L = I / 24;
 95                 var G = L % 30;
 96                 H = G + "天" + H;
 97                 L -= G;
 98                 if (L >= 30) {
 99                     var F = L / 30;
100                     var D = F % 12;
101                     H = D + "月" + H;
102                     F -= D;
103                     if (F >= 12) {
104                         var K = F / 12;
105                         H = K + "年" + H
106                     }
107                 }
108             }
109         }
110     }
111     return H
112 };
113 function StrToDate(A) {
114     return new Date(A.replace(/-/g, "/"))
115 }
				
时间: 2024-10-11 22:35:20

WdatePicker时间控件联动选择的相关文章

wdatePicker时间控件的使用

1.引用wdatePicker控件的js <seript src="../../js/My97DatePicker/wdatePicker.js"> 2.为了使结束时间大于开始时间,或者不能选择大于当前日期的值 这里用表达式进行了控制:控制条件如下: 开始时间控件: <input id="StartDate" type="text" onfocus=“WadePicker({skin:‘whyGreen’,maxDate:‘#F

selenium Webdriver 处理 —— 通过时间控件给文本框赋值

说明:大部分程序选择时间时都是用 时间控件 直接选择一个日期然后赋值给文本框,下面举例说明 1.利用时间控件赋值给文本框具体事例如下: HTML界面: java代码: //用js将input标签的readonly去掉 String js1="var setDate=document.getElementById(\"publishTime\");setDate.removeAttribute('readonly');";//定义一个js exeJS(dr, js1)

jquery 时间控件怎么能禁止输入只能选择日期?

jsp一个input输入框用的是easyui时间控件,现在问题是如何是这个input只能点击选择日期,而禁止手动输入 解决方法::: 在日期的input标签里面添加::::editable="false" 如: <form:input path="rechargeDateStart" style="width:150px" class="easyui-datetimebox"  format="yyyy-MM-

winform用户控件、动态创建添加控件、timer控件、控件联动

用户控件:(1) 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗体中添加, 将其实例化,然后添加到想要添加的容器的Control集合中. 动态创建添加控件: 配合上面的用户控件,实现类似QQ界面的打开自动加载好友昵称和签名 public Form1() { InitializeComponent(); //将当前登陆的账号的全部好友信息取出来 List<A

JS获取时间控件

引用JS文件: <script src="../js/my97/WdatePicker.js" type="text/javascript"></script> <script> function chkAddAction(){ var starttime = $.trim($('#starttime').val()); var endtime= $.trim($('#endtime').val()); if(starttime

mydate97时间控件最大值最小值限制及Javascript日期判断大小

<script language="javascript" type="text/javascript" src="<%=basePath %>js/datePicker/WdatePicker.js"></script><form id="searchForm" action="trans/triplist" method="post" ons

从零开始学_JavaScript_系列(九)——dojo(2)(AJAX、时间控件、鼠标事件、样式修改、事件移除、消息发布订阅)

(21)和(22)写的不好,跳过. (23)AJAX异步加载 插件:dojo/request 参数:request 语法(get): request.get(URL).then(成功回调函数,失败回调函数); 第一个回调函数是成功的,参数用response:(也可以用其他的) 第二个回调函数是失败的,参数用error:(也可以用其他的) 注: ①读取本地比较简单,直接填写本地的url即可: ②如果读取服务器端(比如数据库),那么需要相应的支持,例如python脚本等(我自己目前对python.和

My97DatePicker时间控件

之前一直使用easyui控件无法实现只显示yyyy年MM月格式或者显示yyyyMM格式.相比My97DatePicker时间控件更为强大些. 只要在页面引用如下脚本,WdatePicker.js内部会引用其它js. <script type="text/javascript" src="<%=root%>/Common/My97DatePicker/WdatePicker.js"></script> 然后在input中编写oncl

rf对时间控件的操作

1.如何去掉readonly属性 前端对于时间控件的设置,有时是为了限制用户不能进行手动输入方式进行选择时间,避免在手动输入的时候超限或者输入格式不正确,导致一些不必要的验证麻烦,这是前端开发工程师就会在前端代码中加入readonly属性,但是对于手动测试来说的话,这种只能进行点击控件进行选择时间,而对于自动测试来说,这样的方式可能是行不通,因为这个需要认证时间控件的有效性很多个选择,自动化变得更加麻烦, 是不是就没有办法进行了呢?答案是否点的,例如: 那该怎么进行设置呢?这个是前人踩过的坑,后