form表单提交时都会自动刷新页面吗

form表单提交时都会自动刷新页面吗?为什么?

有没有讲得比较深入的文章推荐

阅读 18.1k
6 个回答

如果是submit提交且不阻止,就会跳转到action地址

form表单提交数据都会刷新页面
不想刷新页面 submit的时候return false然后用ajax异步

可以用ajax进行无刷新提交

关于form表单提交的文章非常多 用bing一搜到处都是或者去这里stackoverflow面搜form

如果不想让页面刷新,可以使用Ajax,至于楼主所说的提交刷新,不是刷新!提交将产生新的 document 用于接受返回的数据由于你的表单是提交到本页,所以看上去像涮新一样.点击 后退 按钮你就可以回到提交前的页面(刷新是不会的)不想要这个效果,可以 提交到 iframe 或使用 ajax

需要return false

个人理解的,因为当时Ajax还没诞生,同源策略(在w3c最早定义是在2005-06-13)还不存在。为了防止页面的安全性,提交数据后不能在当前页面获取到返回的数据,但是有时候又必须获取返回的数据的话,那就需要新开页面来展示数据。这也是和Ajax的本质区别。因此Ajax受同源策略限制,而form表单提交不受同源策略限制(因为当时同源策略都还没有=。=)。(参见阮一峰的同源策略日志http://www.ruanyifeng.com/blo...

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