function checkdates()
{
var startdate = document.forms["frmHolidayRequest"]["startdate"].value;
var enddate = document.forms["frmHolidayRequest"]["enddate"].value;
if (Date.parse(startdate) > Date.parse(enddate))
{
alert("The End Date can not be before the Start Date")
return false;
}
}
我有一个 JavaScript 函数,它检查两个输入的日期,其中一个是假期开始日期,另一个是结束日期。如果用户选择的结束日期早于开始日期,则会弹出警报,但会提交表单?
<form name="frmHolidayRequest" action="HomePage.asp" onsubmit="return InputBoxValidation() || checkdates() || samedates()" method="post">
<input type="text" class="datepicker" name="startdate" readonly="true" />
<input type="text" class="datepicker" name="enddate" readonly="true" />
<input type="submit" name="submitbutton" value="Submit" />
</form>
最佳答案
您应该删除内联提交处理程序并使用 jQuery 的 .ON 方法绑定(bind)提交事件。
定义了 checkdates 函数。
function checkdates() {
var startdate = document.forms["frmHolidayRequest"]["startdate"].value,
enddate = document.forms["frmHolidayRequest"]["enddate"].value;
if (Date.parse(startdate) > Date.parse(enddate)) {
return false;
} else {
return true;
}
}
$(document).ready(function(){
$('#YOURFORMID').on('submit', function(e){
e.preventDefault();
// If your function returns true, submit the form.
if (checkdates()) {
$(this).submit();
// If it returns false. Throw your alert.
} else {
alert("The End Date can not be before the Start Date");
}
});
});
希望这对您有帮助。
关于Javascript函数不停止提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22863681/