JavaScript Submithandler问题

$("#myform").validate({ submitHandler: function (form) { var cboxes = ($('input:checkbox:checked').filter(":checked").length); var nboxes = ($(":checkbox:not(:checked)").length); var flag = false; if ((cboxes > 0) && (nboxes > 0)) { flag = confirm('You have Checked only few locations among the List. \n Are you sure, you do not want to Prescribe from the other locations? '); } else if (cboxes == 0) { alert('Please select atleast One Address \n Where you would prefer to prescribe from.'); } else { flag = true; } return flag; } }); 

如果我点击确定弹出确认框,它应该接受提交,但事实并非如此。

谁能告诉我为什么会这样?

form.submit替换return flag

 $("#myform").validate({ submitHandler: function (form) { var cboxes = ($('input:checkbox:checked').filter(":checked").length); var nboxes = ($(":checkbox:not(:checked)").length); var flag = false; if ((cboxes > 0) && (nboxes > 0)) { flag = confirm('You have Checked only few locations among the List. \n Are you sure, you do not want to Prescribe from the other locations? '); } else if (cboxes == 0) { alert('Please select atleast One Address \n Where you would prefer to prescribe from.'); } else { flag = true; } if(flag) form.submit(); } }); 

如果您没有使用AJAX,这就是.validate()文档中描述的方式。