Js:消息弹出框、获取时间区间、时间格式、easyui datebox 自定义校验、表单数据转化json、控制两个日期不能只填一个
(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&¶m[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&¶m[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、控制两个日期不能只填一个的更多相关文章
- 移动web:Tips消息弹出框
在web开发中经常会用到像alert这样的弹出消息,每个浏览器自带的消息弹出框都不相同.为了统一外观,实现自定义的功能,动手写一个弹出框插件. 对弹出框的实现要求如下: 1. 仿照IOS系统弹出外观 ...
- MessageBox页面消息弹出框类
MessageBox页面消息弹出框类: public class MessageBox { /// <summary> /// 自定义弹出窗口内容,不跳转 /// </summary ...
- 【原创】贡献一个JS的弹出框代码...
一.前言 最近在做一个项目,自己感觉系统自带的alert()方法的弹出框实在是不堪入目,所以在网上找了一些资料,然后自己加工了一下,做出了自己的一个js弹出框,在这里贡献出来,希望对你有帮助. 二.开 ...
- Easyui-交互式消息弹出框
由于项目在优化的时候需要用到弹出框,按自己的想法是傻傻的用一些alert直接弹出得了,但是这样用户体验度不是特别好,影响界面美观,所以自己还是用了封装好的easyui给的消息框,怎么用呢,这个里面很有 ...
- js 常见弹出框学习
模拟系统的弹出框 系统自带的弹出框 总结 链接 http://blog.csdn.net/anhuidelinger/article/details/17024491 参考这个网站学习模态框的动态弹 ...
- WPF实战之一 桌面消息框(右下角消息弹出框)
此版本是根据别人的项目改造的,记录下笔记 原文:https://blog.csdn.net/catshitone/article/details/75089069 一.即时弹出 1.创建弹出框 新建一 ...
- jsp + js + 前端弹出框
在项目中,前端页面我们时常需要各种各样的弹出框: 1.alert对话框:显示含有给定消息的"JavaScript Alert"对话框 代码: var a = "Hello ...
- js登录弹出框插件
第一步:页面引入css:<link rel="stylesheet" type="text/css"" href="common/cs ...
- js swal()弹出框
做前端开发的时候时常会遇到修改成功.新增成功这类弹出框,用alert的话未免有点太low了,而swal()是一个简单又实用的弹出框方法 alert 弹出框样式如下: swal() 弹出框样式如下: 代 ...
随机推荐
- seleniums私房菜系列一 ---- selenium简介
一.Selenium是什么? Selenium是ThroughtWorks公司一个强大的开源Web功能测试工具系列,本系列现在主要包括以下4款: 1.Selenium Core:支持DHTML的测试案 ...
- faster rcnn 做识别
faster rcnn 主要分为四个部分: 1. convolutional part: 特征提取 可以使用vgg,resnet 等等 2.region proposal network: 生成 re ...
- HttpClient 测试web API上传文件实例
1.使用HttpClient 测试上传文件并且设置header信息: using Lemon.Common; using Newtonsoft.Json; using System; using Sy ...
- web渗透测试基本步骤
基本常见步骤: 一 .信息收集 要检测一个站首先应先收集信息如whois信息.网站真实IP.旁注.C段网站.服务器系统版本.容器版本.程序版本.数据库类型.二级域名.防火墙.维护者信息有哪些等等 ...
- pycharm活动模板
1.复制模板内容 2.文件设置: 点击+号:
- Mysql大文本类型
TEXT 一个BLOB或TEXT列,最大长度为65535(2^16-1)个字符. MEDIUMTEXT 一个BLOB或TEXT列,最大长度为16777215(2^24-1)个字符. LONGTEXT ...
- (5)Java数据结构--有继承图,用途分析
java 中几种常用数据结构 - u010947402的博客 - CSDN博客http://blog.csdn.net/u010947402/article/details/51878166 JAVA ...
- JavaScript编程基础2
1,数据类型相关操作 使用typeof x函数查看变量的数据类型: typeof "John" // 返回 string typeof 3.14 // 返回 number type ...
- zookeeper的ACL权限控制
ACL:Access Control List 访问控制列表 1. 简介 0.概述 ACL 权限控制,使用:scheme:id:perm 来标识,主要涵盖 3 个方面: 权限模式(Scheme): ...
- MySQL绿色版安装整套流程
https://www.cnblogs.com/LiuChunfu/p/6426918.html