Jquery validationEngine JS控制提交FROM 为什么验证不通过也可以提交啊该怎么处理

Jquery validationEngine JS控制提交FROM 为什么验证不通过也可以提交啊

$(function(){
//验证表单
$("#serachFrom").validationEngine({
//代表一次仅 提示一条信息
maxErrorsPerField:1,
//是否是异步
ajaxFormValidation: true,
ajaxFormValidationMethod : "post",
onAjaxFormComplete: ajaxValidationCallback,
onBeforeAjaxFormValidation: beforeCall
});
});



var layerLoad;

function beforeCall(form, options){
if (window.console) 
console.log("Right before the AJAX form validation call");
//开启加载提示框
layerLoad = layer.load('努力加载中...');
return true;
}

function ajaxValidationCallback(status, form, json, options){
if (status === true) {
if(json.totalEnergyDataRecordsForPage.length > 0 && json.proportionPie3DChartXmlData != "" && json.totalCountColumn3DChartXmlData != ""){
$("#totalEnergyDataRecordsForPageTable").html("");
var htm = "";
var pageData = json.totalEnergyDataRecordsForPage;
var pageDataLength = json.totalEnergyDataRecordsForPage.length;
//表格分页数据
for(var i = 0; i < pageDataLength; i++){
var totalEneryData = pageData[i].totalEneryData;
htm += '<tr>';
htm += '<td align="center">'+(i + 1)+'</td>';
htm += '<td>'+pageData[i].datePeriod+'</td>';
htm += '<td>'+pageData[i].totalEneryData+'</td>';
htm += '</tr>';
}

if(pageDataLength > 0){
htm += '<tr id="maxMinValue">';
htm += '<td colspan="3">';
htm += '最大值 : <span>'+json.maxValue+'</span>&nbsp;';
htm += '最小值 : <span>'+json.minValue+'</span>&nbsp;';
htm += '平均值: <span>'+json.avgValue+'</span>&nbsp;';
htm += '总     计 : <span>'+json.sumValue+'</span>';
htm += '</td>';
htm += '</tr>';
}


if(json.proportionPie3DChartXmlData != ""){
//总能耗统计 分类展示柱状图
var myTotalCountDivColumn3DChart = getChartObjByProportionPie3DChart();
myTotalCountDivColumn3DChart.setDataXML(json.proportionPie3DChartXmlData);
myTotalCountDivColumn3DChart.render("proportionDivChart");
$("#proportionDivChart").css("display","block");
}else{
$("#proportionDivChart").css("display","none");
}
if(json.totalCountColumn3DChartXmlData != ""){
//能耗占比统计 饼状图
var myProportionPie3DChart = getChartObjByTotalCountDivColumn3DChart();
myProportionPie3DChart.setDataXML(json.totalCountColumn3DChartXmlData);
myProportionPie3DChart.render("totalCountChart");
$("#totalCountChart").css("display","block");
}else{
$("#totalCountChart").css("display","none");
}
$("#pageView").html(json.pageViewStr);
$("#pageCount").val(json.pageCount);
$("#totalEnergyDataRecordsForPageTable").html(htm);

//关闭加载提示框
layer.close(layerLoad);
}else{
layer.alert('对不起,内部出现错误,请从新查询!', 3);
}
}else{
layer.alert('对不起,内部出现错误,请从新查询!', 3);
}
}



<form action="${path }/manager/energyTotalStatist/loadTotalEnergyStatistic" method="POST" id="serachFrom">
<div style="float: left; margin-left: 20px;">
时间查询方式:
<select name="dataFormatType" id="dataFormat"  onchange="selectDateFormat(this);" class="validate[required]">
<option value="" selected="selected">--请选择--</option>
<option value="HH" <c:if test="${param.dataFormatType eq 'HH' }">selected</c:if>>按小时查询</option>
<option value="DD" <c:if test="${param.dataFormatType eq 'DD' }">selected</c:if>>按天数查询</option>
<option value="MM" <c:if test="${param.dataFormatType eq 'MM' }">selected</c:if>>按月份查询</option>
<option value="YY" <c:if test="${param.dataFormatType eq 'YY' }">selected</c:if>>按年份查询</option>
</select>
</div>
<div style="float: left;margin-left: 100px;" id="dateInput">
<!-- 时间 input -->
时间起:
<input id="d5221" class="validate[required] Wdate" type="text"
onkeyup="notInput(this);" name="startTime" value="${param.startTime}" onclick="checkDateTypeNotNull();"/>
时间止:
<input id="d5222" class="validate[required] Wdate" type="text"
onkeyup="notInput(this);" name="endTime" value="${param.endTime}"  onclick="checkDateTypeNotNull();"/>
</div>
<div style="float: left; margin-left: 100px;">
<input type="submit" value="查询"/>&nbsp;&nbsp;
<input type="button" value="导出数据"/>&nbsp;&nbsp;