您的位置:首页 > Web前端 > JQuery

JQuery_验证时间段,起始时间必须小于截至时间 JQuery插件

2016-04-07 10:21 736 查看
前端时间写了个简单的  JQuery验证时间段的插件,起始时间必须小于等于截至时间

函数原型

function validateTimePeriod(begin,end)

begin,end 可以为DOM对象,也可以为JQuery对象。

返回值:

true: 起始时间小于截至时间

false: 不满足起始时间小于等于截至时间

函数源码:

// 查询校验,校验起始时间必须小于截至时间
function validateTimePeriod(begin, end) {

if (!(begin instanceof jQuery)) {
begin = $(begin);
}
if (!(end instanceof jQuery)) {
end = $(end);
}

var beginString = new String(begin.val());
var endString = new String(end.val());

if (!(beginString == null || beginString == '')
&& !(endString == null || endString == '')) {
// alert(beginString instanceof String); //JavaScripy判断一个对象是否是String类型
// alert(typeof beginString); //typeof String 类型 返回的是 Object

// //转换为JavaScript日期类型
// var bArray = beginString.split(/[- :]/);
// var beginTime = new Date(bArray[0], bArray[1]-1, bArray[2],
// bArray[3], bArray[4]);
// var eArray = endString.split(/[- :]/);
// var endTime= new Date(eArray[0], eArray[1]-1, eArray[2], eArray[3],
// eArray[4]);

var beginTime = new Date(beginString);
var endTime = new Date(endString);

if (beginTime <= endTime) {
return true;
} else {
return false;
}
}
return true;

}


调用示例:

$("#search").click(function(){
var result = validateTimePeriod(document.getElementById("startTime"),$("#endTime"));		//验证是否起始时间小于等于截至时间
if(result!=true){
tipsTimePeriod($("#timePeriodTips"),"请确保起始时间小于截至时间");
return false;
}
});


需要用到的知识

1.JavaScript 的 Date对象

http://blog.csdn.net/u010003835/article/details/51075163

2.JQuery与DOM对象之间的相互转换

http://blog.csdn.net/u010003835/article/details/51083427

判断是否是JQuery对象

if(!(begin instanceof jQuery)){
begin = $(begin);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: