<input type="submit" onclick="submitAction();return false;"/>

<input type="submit" onclick="submitAction();return false;"/>和
<input type="submit" onclick="return submitAction()"/>
有何区别?两者如何将表单提交给服务器的?望大神赐教
阅读 4.3k
5 个回答

前者显然是要使用ajax提交的,毕竟你已经直接禁用了浏览器默认行为,后者是不确定的,如果你在submit里面固定返回false就和前者一样了,如果你是验证成功返回true失败返回false就是使用浏览器默认的提交方式了。

前者在submitAction()处理。
后者submitAction()可能处理,也可能不处理,比如参数检查下,要是检查失败就处理,成功就返回true交给默认的表单处理。

function submitAction(){
    return false or true;
}

function checkForm(){
    submitAction();
    return false;
}

就是这样的差别

<input type="submit" onclick="return checkForm()"/>
<input type="submit" onclick="return submitAction()"/>

前者是用submitAction();提交表单,因为你的return false组织了浏览器的默认行为,也就是表单不再直接提交数据,后者有点类似验证表单的意思,如果你的submitAction();函数里面最终返回的结果为真或者为假,都不影响表单以默认的形式提交数据。

return false;是阻止了浏览器的默认的行为,那提交的话就是要用Ajax提交了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题