• 技术文章 >web前端 >前端问答

    form表单和ajax提交的区别是什么

    青灯夜游青灯夜游2022-01-13 18:00:33原创92

    区别:1、ajax提交是异步进行,网页不需要刷新,而from表单提交需要刷新;2、ajax必须要用js来实现,而Form表单不是必须;3、ajax需要使用程序来对其进行数据处理,Form表单提交是根据表单结构自动完成,不需要代码干预。

    本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

    form表单提交与 ajax提交的区别

    1、使用场景:

    安全性都一样,都是发送的http协议。安全性与提交文件的业务处理(格式检测,防注入)有关,与提交方式无关。

    一般登录用表单提交,点击提交触发submit事件,一般会 使页面发生跳转,页面的跳转等行为的控制往往在后端,后端控制页面的跳转及数据的传递;但是某些时候不希望页面跳转,或者说想要将控制权放在前端,通过js来操作页面的跳转或数据变化,一般这种异步操作,都会使用ajax。

    但是Ajax会有个隐藏的问题,即浏览器不保存密码,不符合用户习惯。理想的方式:建立隐藏的iframe,把form标签的target指向iframe,然后检测iframe的状态。

    2、比较:

    (1)ajax在提交、请求、接收时,都是异步进行,网页不需要刷新,只刷新页面局部,不关心也不影响页面其他部分的内容。

    Form提交则是新建一个页面,哪怕是提交给自己本身的页面,也需要刷新,为了维持页面用户对表单的状态改变,要在控制器和模板之间传递更多参数以保持页面状态。

    (2)ajax提交时,是在后台新建一个请求。

    Form却是放弃本页面,然后再请求。

    (3)ajax必须要用js来实现,存在调试麻烦、浏览器兼容问题,而且不启用js的浏览器,无法完成操作。

    Form表单是浏览器自带的,无论是否开启js,都可以提交表单。

    (4)ajax在提交、请求、接收时,整个过程都需要使用程序来对其进行数据处理。

    Form表单提交,是根据表单结构自动完成,不需要代码干预。用submit提交。

    3、其他方面:

    关于输入内容的校验,ajax可以在获取到元素内容用程序判断;form表单的属性中有校验的字段,easyui,jeecg等中都封装,用户只需添加正则表达式的校验规则。

    【相关教程推荐:AJAX视频教程

    以上就是form表单和ajax提交的区别是什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:经典技巧之JavaScript数组操作(整理分享) 下一篇:你必须了解的HTML规范(整理分享)

    相关文章推荐

    • ajax和fetch有啥区别• 如何解决ajax传到后台php中文乱码问题• jquery ajax回调函数有哪些• ajax和fetch有什么区别• ajax的属性有哪些

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网