我花了一个小时在网上搜索可能的解决方案,也许我没有使用正确的条款。我希望有人能在这里帮助我。 我有一个在fancyBox iframe中使用的表单,在我的提交按钮下面添加这个“if语句”后不再起作用。但是,如果我选择超过5天,我会收到错误警告(奇怪......)。如果我删除它,表单提交将再次有效。
if (VType == 'useRange'){
var splitName = vacDays.split(" - ");
var startDay = Date.parse(splitName[0].trim());
var endDay = Date.parse(splitName[1].trim());
var dayCount = (endDay - startDay) / (86400000);
if (dayCount > 4)
alert('The date range cannot exceed 5 consecutive days');
return false;
}
以下是完整的脚本,提前感谢您的帮助!
$("#addVacButton").click(function(event){
event.preventDefault();
if (!$('#VacAddForm').valid())
return false;
var vacDays = $("#vacDays").val();
var VacHours = $("input[name='VacHours']:checked").length;
var VAC_UnschedTime = $("#VAC_UnschedTime").val();
var VAC_Unsched = $("#VAC_Unsched").val();
var VType = $("input[name='VTypeID']):checked").attr('id');
//check if date range exceed 5 days
if (VType == 'useRange'){
var splitName = vacDays.split(" - ");
var startDay = Date.parse(splitName[0].trim());
var endDay = Date.parse(splitName[1].trim());
var dayCount = (endDay - startDay) / (86400000);
if (dayCount > 4)
alert('The date range cannot exceed 5 consecutive days');
return false;
}
var data = $("#VacAddForm").serialize();
$.ajax({
url: "cfc/fms.cfc?method=insertVAC&returnformat=plain",
type: "POST",
data: data,
cache: false,
success: function (returnMessage) {
var returnMsg = jQuery.trim(returnMessage);
if (returnMsg.search(/Error/i) == '-1'){
alert('ok');
}
else{
alert('error');
}
}
});
return false;
});
这是链接:
<a id="VacAddForm" href="forms/VacAddForm.cfm?id=#id#"> Add</a>
答案 0 :(得分:2)
您需要为if语句提供适当的块:
if (dayCount > 4) {
alert('The selected days can\'t exceed 5 days');
return false;
}
答案 1 :(得分:0)
在第10行,您应该使用//而不是\,因此您的评论是错误的。将其改为反弹。