自己封装的关于jquery easyUI的datetimebox开始时间不能大于结束时间的判断
2014-01-24 16:51
841 查看
工作中遇到jquery easyUI中的时间没有属性判断时,自己封装了以下的方法:
1.首先定义两个相同的方法,方法名为formatDateTimeBox(startTimeId,endTimeId,true)和formatDateTimeBox(endTimeId,startTimeId,false);
2.参数介绍:startTimeId为时间查询框中开始时间的ID,endTimeId为结束时间的ID,第三个参数true or false判断先点击前面的时间框还是后面的时间查询框。
3.公共方法:文字不多说,直接上代码.
function formatDateTimeBox(frontId,lastId,flag){
$("#"+frontId).datetimebox({
formatter: function (date) {
var y = date.getFullYear();
var m = date.getMonth() + 1 ;
var d = date.getDate();
var h = date.getHours()<10 ? "0"+date.getHours():date.getHours();
var minute=date.getMinutes()<10 ? "0"+date.getMinutes():date.getMinutes();
var s =date.getSeconds()<10 ? "0"+date.getSeconds():date.getSeconds();
sTime = y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s ;
sTime= sTime.replaceAll("-","").replaceAll(" ","").replaceAll(":","");
eTime=$("#"+lastId).datetimebox("getValue").replaceAll("-","").replaceAll(" ","").replaceAll(":","");
if(flag==true){
if(parseInt(sTime)>parseInt(eTime)){
alert("提示", "开始时间不能大于结束时间!");
return "";
}else{
return y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s ;
}
}else{
if(parseInt(sTime)<parseInt(eTime)){
alert("提示", "开始时间不能大于结束时间!");
return "";
}else{
return y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s ;
}
}
},
onSelect: function(date){
var y = date.getFullYear();
var m = date.getMonth() + 1;
var d = date.getDate();
var h = date.getHours()<10 ? "0"+date.getHours():date.getHours();
var minute=date.getMinutes()<10 ? "0"+date.getMinutes():date.getMinutes();
var s =date.getSeconds()<10 ? "0"+date.getSeconds():date.getSeconds();
return y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s;
}
});
}
需要注意的是js的replaceAll方法,需要自己在js里申明这样一个方法:
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {
if (!RegExp.prototype.isPrototypeOf(reallyDo)) {
return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith);
} else {
return this.replace(reallyDo, replaceWith);
}
};
更多0
1.首先定义两个相同的方法,方法名为formatDateTimeBox(startTimeId,endTimeId,true)和formatDateTimeBox(endTimeId,startTimeId,false);
2.参数介绍:startTimeId为时间查询框中开始时间的ID,endTimeId为结束时间的ID,第三个参数true or false判断先点击前面的时间框还是后面的时间查询框。
3.公共方法:文字不多说,直接上代码.
function formatDateTimeBox(frontId,lastId,flag){
$("#"+frontId).datetimebox({
formatter: function (date) {
var y = date.getFullYear();
var m = date.getMonth() + 1 ;
var d = date.getDate();
var h = date.getHours()<10 ? "0"+date.getHours():date.getHours();
var minute=date.getMinutes()<10 ? "0"+date.getMinutes():date.getMinutes();
var s =date.getSeconds()<10 ? "0"+date.getSeconds():date.getSeconds();
sTime = y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s ;
sTime= sTime.replaceAll("-","").replaceAll(" ","").replaceAll(":","");
eTime=$("#"+lastId).datetimebox("getValue").replaceAll("-","").replaceAll(" ","").replaceAll(":","");
if(flag==true){
if(parseInt(sTime)>parseInt(eTime)){
alert("提示", "开始时间不能大于结束时间!");
return "";
}else{
return y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s ;
}
}else{
if(parseInt(sTime)<parseInt(eTime)){
alert("提示", "开始时间不能大于结束时间!");
return "";
}else{
return y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s ;
}
}
},
onSelect: function(date){
var y = date.getFullYear();
var m = date.getMonth() + 1;
var d = date.getDate();
var h = date.getHours()<10 ? "0"+date.getHours():date.getHours();
var minute=date.getMinutes()<10 ? "0"+date.getMinutes():date.getMinutes();
var s =date.getSeconds()<10 ? "0"+date.getSeconds():date.getSeconds();
return y + "-" + (m < 10 ? ("0" + m) : m) + "-" + (d < 10 ? ("0" + d) : d)+" " + h+":"+minute+":"+s;
}
});
}
需要注意的是js的replaceAll方法,需要自己在js里申明这样一个方法:
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {
if (!RegExp.prototype.isPrototypeOf(reallyDo)) {
return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith);
} else {
return this.replace(reallyDo, replaceWith);
}
};
更多0
相关文章推荐
- 自己封装的关于jquery easyUI的datetimebox开始时间不能大于结束时间的判断
- javascript 判断时间控件中,结束时间不能大于开始时间
- javascript 判断时间控件中,结束时间不能大于开始时间
- jquery easyui 对于开始时间小于结束时间的判断示例
- 开始时间不能大于结束时间
- WdatePicker 开始日期不能大于结束日期,结束时间不能小于开始时间
- My97DatePicker 日期控制,开始时间不能大于结束时间,结束时间不能小于开始时间
- jquery easyui 对于开始时间小于结束时间的判断示例
- js 日期选择判断结束时间大于开始时间
- JS 判断字符串是否为时间格式&开始时间不能大于截止时间
- myDatePinker设置开始时间不能大于结束时间
- jquery easyui 对于开始时间小于结束时间的判断
- bootstrap-datepicker限定可选时间范围 一、应用场景 实际应用中可能会根据日期字段查询某个日期范围内的数据,则需要对日期选择器可选时间进行限制, 如:开始时间不能大于结束时间,
- WdatePicker 设置开始日期不能大于结束日期且日期不能大于当前时间
- 开始时间和结束时间的时间间隔不能大于24小时
- jquery validate 的自定义验证开始时间不能大于结束时间
- angular js判断结束时间不能小于开始时间并且间隔不能超过30天
- jquery validate 的自定义验证开始时间不能大于结束时间
- jquery easyui 对于开始时间小于结束时间的判断示例
- JS判断结束时间不能小于开始时间并且间隔不能超过31天