(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的弹出框代码...

    一.前言 最近在做一个项目,自己感觉系统自带的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 + js + 前端弹出框

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

  8. js登录弹出框插件

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

  9. js swal()弹出框

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

随机推荐

  1. oracle 存储过程(包)的写法和执行

    --in 代表输入参数,out 代表输出参数create or replace procedure myproc(id in int, v_message out varchar2) is--定义临时 ...

  2. Redis + keepalived 高可用行配置检测脚本

    Redis 在生产配置中:除redis集群.哨兵模式之外:主从模式还是比较普遍的. 配置 redis 多主从:由 keepalived 做 VIP 地址漂移.可以实现redis的高可用性. keepa ...

  3. luogu P3175 [HAOI2015]按位或

    传送门 如果每个位置上的数字的意义是这个位置被加进集合的最早时间,那么我们要求的就是集合中最大数的期望,使用Min-Max容斥,\(E(max(S))=\sum_{T\subset S}(-1)^{| ...

  4. js 中编码(encode)和解码(decode)的三种方法

    js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 下 ...

  5. 「LibreOJ Round #6」花火

    转化思维的好题! 链接:here 大致题意: 有$ n$个数字,你每次可以交换相邻两个,还有一次交换任意两个元素的机会,求最少的交换次数使得这些数字升序排序(原数列两两不同) $ solotion:$ ...

  6. 「PKUWC 2018」Minimax

    传送门:Here 一道线段树合并好题 如果要维护点$ x$的信息,相当于合并$ x$的两棵子树 对于这题显然有:任何叶子节点的权值都可能出现在其祖先上 因而我们只需要在线段树合并的时候维护概率即可 我 ...

  7. animation属性

    文章中转站,因为涉及到动画效果,还是看文笔比较好的博主吧~ CSS3(三)Animation 入门详解 css3中变形与动画(三) CSS3 Animation 是由三部分组成. 关键帧(keyfra ...

  8. 简单重写容器vector

    #pragma once #include <iostream> using namespace std; template<class T> class CMyVector ...

  9. fastclick.js插件使用简单说明

    为什么存在延迟? 从点击屏幕上的元素到触发元素的 click 事件,移动浏览器会有大约 300 毫秒的等待时间.为什么这么设计呢? 因为它想看看你是不是要进行双击(double tap)操作.     ...

  10. P1494 [国家集训队]小Z的袜子(莫队)

    题目链接:https://www.luogu.org/problemnew/show/P1494 题目大意:中文题目 具体思路:计算概率的时候,每一次是区间的移动,每一次移动,记得先将原来的记录的影响 ...