onsumit表示提交表单的动作,此时提交已经开始了。所以即使你return false也只能阻止一个动作的发生,而这个提交动作也无可避免地已经在进行中或将要完成。
解决办法:
去除form标签上的onsubmit
在提交按钮上加上onclick方法:
例如:
<input type="button" value="提交" name="">
在checkForm中处理逻辑,控制提交。
form对象.submit();//提交表单
例如:
//表单提交验证
function checkForm(){
/*
只有有一个对象的isUplod为false;
controller都为fasle;
只有当所有对象的isUplod为true时,
controller才为true
*/
//控制是否上传完毕 默认为fasle
var controller = true;
for(var i=0;i<input_files.length;i++){
if(!input_files[i].isUplod){
controller=false;
}
}
if(controller){
alert("所有图片上传完毕");
//表单提交
document.getElementById("ceshi").submit();
}else{
//处理
alert("还有图片未上传完");
return false;
}
}