Js:消息弹出框、获取时间区间、时间格式、easyui datebox 自定义校验、表单数据转化json、控制两个日期不能只填一个

时间:2022-02-07 21:46:03
(function ($) {
$.messageBox = function (message) {
$.messager.show({
title:'消息框提示',
msg:message,
showType:'show'
});
}; /**
* 获取时间区间
* @param type 1:当年的一月一日到现在;type 2:获取当月的第一天和最后一天
* return {startTime:xxxx,endTime:xxxx}
*/
$.getTimeInterval = function (type,date){
var startTime, endTime;
if (type == 1) {
var year = new Date();
startTime = new Date(year.getFullYear(), 0, 1); //年头(xxxx-1-1)
endTime = new Date();
}else if(type == 2){
var y = date.substr(0,4), m = date.substr(4,2);
startTime = new Date(y,m-1,1).format("yyyy-MM-dd");
var days = new Date(y,m,0).getDate();
endTime = new Date(y,m-1,days).format("yyyy-MM-dd");
}
return {startTime:startTime, endTime:endTime};
} //防止dialog框拖动时超出父面板,需要在有dialog的页面调用
$.setDialogPosition = function () {
var easyuiPanelOnMove = function (left, top) {
var l = left;
var t = top;
if (l < 1) {
l = 1;
}
if (t < 1) {
t = 1;
}
var width = parseInt($(this).parent().css('width')) + 14;
var height = parseInt($(this).parent().css('height')) + 14;
var right = l + width;
var buttom = t + height;
var browserWidth = $(window).width();
var browserHeight = $(window).height();
if (right > browserWidth) {
l = browserWidth - width;
}
if (buttom > browserHeight) {
t = browserHeight - height;
}
$(this).parent().css({
//修正面板位置
left:l,
top:t
});
};
$.fn.dialog.defaults.onMove = easyuiPanelOnMove;
$.fn.window.defaults.onMove = easyuiPanelOnMove;
$.fn.panel.defaults.onMove = easyuiPanelOnMove;
}; $.fn.toolbar.defaults.valign = null; //时间格式化
Date.prototype.format = function (format) {
var o = {
"M+":this.getMonth() + 1, //month
"d+":this.getDate(), //day
"h+":this.getHours(), //hour
"m+":this.getMinutes(), //minute
"s+":this.getSeconds(), //second
"q+":Math.floor((this.getMonth() + 3) / 3), //quarter
"S":this.getMilliseconds() //millisecond
}
if (/(y+)/.test(format)) format = format.replace(RegExp.$1,
(this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)if (new RegExp("(" + k + ")").test(format))
format = format.replace(RegExp.$1,
RegExp.$1.length == 1 ? o[k] :
("00" + o[k]).substr(("" + o[k]).length));
return format;
} // easyui datebox 自定义校验
var datePattern=/^(\d{4})[-/](\d{1,2})[-/](\d{1,2})$/,opText={">":"大于","<":"小于",">=":"大于等于","<=":"小于等于"};
$.extend($.fn.validatebox.defaults.rules, {
compareDate_resetTg:{
validator:function (value, param) {
if (value && param.length > 0) {
if (datePattern.test(value)) {
var el = $(param[0]), v = el.val() || el.getWidget().getValue();
if (v) {
if (datePattern.test(v)) {
// var op = param.length > 1 ? param[1] : ">", d1 = new Date(value), d2 = new Date(v);
var op=param.length>1?param[1]:">",d1 = new Date(value.replace(/[-/]/g, "/")),d2 = new Date(v.replace(/[-/]/g, "/"));
if (eval(d1.getTime() + op + d2.getTime())){
return true;
} else {
param[0] = "无效,应" + opText[op] + v;
$(param[2]).datebox("reset");
return false;
}
}
}
} else {
param[0] = "无效";
return false;
}
}
return true;
},
message: '输入日期{0}'
}
/* ,
ruleAppealOpinion:{
validator:function (value, param) {
if(param.length > 0){
var count=$("#"+param[0]).getWidget()?$("#"+param[0]).getWidget().getValue():$("#"+param[0]).val();
var type=$("#"+param[1]).getWidget()?$("#"+param[1]).getWidget().getValue():$("#"+param[1]).val();
if(count>0){
if(!value&&param[2]==3){
return false;
}
}
else{
if(type==1){
if(!value&&(param[2]==1||param[2]==0)){
return false;
}
}
else if(type==2){
if(!value&&(param[2]==2||param[2]==0)){
return false;
}
}
else{
if(!value&&param[2]==3){
return false;
}
}
}
}
return true;
},
message: '不能为空!'
}*/
})
})(jQuery); //表单数据转化json
function form2Json() {
var o = {};
var a = $("form input").serializeArray();
$.each(a, function () {
if (o[this.name]) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
} function getFileBatchNo(){
return loginAccount.accountId + "_" + new Date().getTime();
} function isLeaf(node) {
return node.state == undefined;
} function dowloadFile(downLoadFile) {
var fileNames = ['GoogleChromeframeStandaloneEnterprise.msi','flashplayer11-7_install_win_ax.exe'];
var msg = ["系统需要ie8及以上版本,如果您的浏览器版本过低!为了提供更好的体验,请点击【确定】下载安装浏览器插件,并重启浏览器",
"你确定下载flash控件?"];
var r = window.confirm(msg[downLoadFile]);
if (r) {
location.href = ctx + "/"+fileNames[downLoadFile];
}
} function resetDgFooterStyle() {
$('.datagrid-footer-inner').css('background', '#88CDEF');
} /**
* 控制两个日期不能只填一个
* @param targetFr
* @param targetTo
* @return {Boolean}
*/
var validate = function(targetFr,targetTo){
var vFr = $(targetFr).getWidget().getValue()||"";
var vTo = $(targetTo).getWidget().getValue()||"";
var allNotNull = vFr&&vTo;
var allNull = vFr==""&&vTo=="";
if(allNotNull||allNull){
return true;
}
$.alert("请填写完整的日期区间");
return false;
}

Js:消息弹出框、获取时间区间、时间格式、easyui datebox 自定义校验、表单数据转化json、控制两个日期不能只填一个的更多相关文章

  1. 移动web:Tips消息弹出框

    在web开发中经常会用到像alert这样的弹出消息,每个浏览器自带的消息弹出框都不相同.为了统一外观,实现自定义的功能,动手写一个弹出框插件. 对弹出框的实现要求如下: 1. 仿照IOS系统弹出外观 ...

  2. MessageBox页面消息弹出框类

    MessageBox页面消息弹出框类: public class MessageBox { /// <summary> /// 自定义弹出窗口内容,不跳转 /// </summary ...

  3. 【原创】贡献一个JS的弹出框代码&period;&period;&period;

    一.前言 最近在做一个项目,自己感觉系统自带的alert()方法的弹出框实在是不堪入目,所以在网上找了一些资料,然后自己加工了一下,做出了自己的一个js弹出框,在这里贡献出来,希望对你有帮助. 二.开 ...

  4. Easyui-交互式消息弹出框

    由于项目在优化的时候需要用到弹出框,按自己的想法是傻傻的用一些alert直接弹出得了,但是这样用户体验度不是特别好,影响界面美观,所以自己还是用了封装好的easyui给的消息框,怎么用呢,这个里面很有 ...

  5. js 常见弹出框学习

    模拟系统的弹出框 系统自带的弹出框 总结 链接  http://blog.csdn.net/anhuidelinger/article/details/17024491 参考这个网站学习模态框的动态弹 ...

  6. WPF实战之一 桌面消息框(右下角消息弹出框)

    此版本是根据别人的项目改造的,记录下笔记 原文:https://blog.csdn.net/catshitone/article/details/75089069 一.即时弹出 1.创建弹出框 新建一 ...

  7. jsp &plus; js &plus; 前端弹出框

    在项目中,前端页面我们时常需要各种各样的弹出框: 1.alert对话框:显示含有给定消息的"JavaScript Alert"对话框 代码: var a = "Hello ...

  8. js登录弹出框插件

    第一步:页面引入css:<link rel="stylesheet" type="text/css"" href="common/cs ...

  9. js swal&lpar;&rpar;弹出框

    做前端开发的时候时常会遇到修改成功.新增成功这类弹出框,用alert的话未免有点太low了,而swal()是一个简单又实用的弹出框方法 alert 弹出框样式如下: swal() 弹出框样式如下: 代 ...

随机推荐

  1. 【开源】&period;Net 分布式服务中心

    分布式服务中心 开源地址: http://git.oschina.net/chejiangyi/Dyd.BaseService.ServiceCenter 当垂直应用越来越多,应用之间交互不可避免,将 ...

  2. sqlserver中查找长时间未提交事务

    无论是有意无意,如果事务在数据库中保持打开,则它会阻塞其他进程对修改后的数据进行操作.同样,对事务日志进行备份也只会截断不活动事务的那部分事务日志,所以打开的事务会导致日志变多(甚至达到物理限制),直 ...

  3. 利用Warensoft Stock Service编写高频交易软件

    利用Warensoft Stock Service编写高频交易软件 无论是哪种交易软件,对于程序员来讲,最麻烦的就是去实现各种算法.本文以SAR算法的实现过程为例,为大家说明如何使用Warensoft ...

  4. c&num;有关udp可靠传输&lpar;包传输数据包&rpar; 升级

    在c#有关udp可靠传输(包传输数据包)我们讨论,UDP包的发送,可是上一个程序有一个问题.就是数据比較大.一个Message类序列化后都有2048B,而实际的数据量也就只是 50B罢了,这就说明当中 ...

  5. 借助Chrome和插件爬取数据

    工具 Chrome浏览器 TamperMonkey ReRes Chrome浏览器 chrome浏览器是目前最受欢迎的浏览器,没有之一,它兼容大部分的w3c标准和ecma标准,对于前端工程师在开发过程 ...

  6. jQuery学习笔记(jquery&period;ui插件)

    官网地址:http://ui.jquery.com/ jQuery UI源自于一jQuery插件-Interface.目前版本是1.10.3,需要jQuery 1.6以上版本支持. jQuery UI ...

  7. mysql date&lowbar;sub用法

    查询一天: select * from table where to_days(column_time) = to_days(now()); select * from table where dat ...

  8. java SE 入门之运算符&lpar;第三篇&rpar;

    在 java 中主要有以上运算符,分为 赋值运算符 ,算术运算符.关系运算符(比较运算符),逻辑运算符和三目运算符(三元运算符). 我们一起来学习下吧! 一.赋值运算符 赋值运算符主要有五个.分别是 ...

  9. sqlserver trigger(触发器)-更新某几列数据时触发【转】

    CREATE TRIGGER [dbo].[updataAlarmLevel]ON [dbo].[Alarm_Alarm_Info]AFTER INSERT, UPDATE – 在更新和插入之后ASB ...

  10. 在无法单步调试的情况下找Bug的技巧

    比如说你有一个大的模块A,其组成部分有B,C,D这3个小的模块,现在A出了一个BUG,因为某种原因的限制你无法单步调试.怎么较快地定位BUG发生的根源? 这里记录一下刚才我在找BUG的时候采用的思路, ...