• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 举例详解HTML5中使用JSON格式提交表单_html5教程技巧

举例详解HTML5中使用JSON格式提交表单_html5教程技巧

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,JSON等相关知识,匿名希望在学习及工作中可以帮助到您
以JSON编码格式提交表单数据是HTML5对WEB发展进化的又一大贡献,以前我们的HTML表单数据是通过key-value方式传输的服务器端,这种形式的传输对数据组织缺乏管理,形式十分原始。而新出现的JSON格式提交表单数据方法,将表单里的所有数据转化的具有一定规范的JSON格式,然后传输的服务器端。服务器端接收到的数据是直接可以使用的合格JSON代码。如何声明以JSON格式提交表单

大家应该对如何用表单上传一个文件的写法很熟悉,它需要在HTML中form标记上添加 enctype="multipart/form-data" 声明,就是告诉浏览器要按上传文件模式发送表单数据。而JSON格式提交表单的声明与此类似,它的写法是: enctype='application/json'。
对老式浏览器的兼容

以JSON格式提交表单是HTML5中一种很新的规范,只有实现了这些规范的现代浏览器才能识别 enctype='application/json'的语义,才能正确的将表单数据打包成JSON格式。而对于一些老式浏览器,以及还未实现这些标准的浏览器,它们无法识别 enctype='application/json'代表什么,于是表单的enctype会自动退化成application/x-www-form-urlencoded缺省编码格式。服务器端代码可以根据enctype的值来判断如何接收数据。
JSON编码格式提交表单的格式范例
例1 基本用法

  1. <form enctype='application/json'>
  2. <input name='name' value='Bender'>
  3. <select name='hind'>
  4. <option selected>Bitableoption>
  5. <option>Kickableoption>
  6. select>
  7. <input type='checkbox' name='shiny' checked>
  8. form>
  9. // 生成的Json数据是
  10. {
  11. "name": "Bender"
  12. , "hind": "Bitable"
  13. , "shiny": true
  14. }

例2 当表单存在多个重名的表单域时,按JSON数组编码

  1. <form enctype='application/json'>
  2. <input type='number' name='bottle-on-wall' value='1'>
  3. <input type='number' name='bottle-on-wall' value='2'>
  4. <input type='number' name='bottle-on-wall' value='3'>
  5. form>
  6. // 生成的Json数据是
  7. {
  8. "bottle-on-wall": [1, 2, 3]
  9. }

例3 表单域名称以数组形成出现的复杂结构

  1. <form enctype='application/json'>
  2. <input name='pet[species]' value='Dahut'>
  3. <input name='pet[name]' value='Hypatia'>
  4. <input name='kids[1]' value='Thelma'>
  5. <input name='kids[0]' value='Ashley'>
  6. form>
  7. // 生成的Json数据是
  8. {
  9. "pet": {
  10. "species": "Dahut"
  11. , "name": "Hypatia"
  12. }
  13. , "kids": ["Ashley", "Thelma"]
  14. }

例4 在上

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2018-12-03详解HTML5幻灯片系统--H5Slides
  • 2018-12-03用HTML5开发App真的好嘛?
  • 2018-12-03HTML5实践之歌词同步播放器的示例代码分享
  • 2017-08-06html5播放视频且动态截图实现步骤与代码(支持safari其他未测试)
  • 2017-08-06HTML5之SVG 2D入门12—SVG DOM及DOM操作介绍
  • 2018-12-03如何删除多余无用的css?
  • 2018-12-03HTML5-嵌入内容的详细介绍
  • 2017-08-06HTML5 Canvas中绘制矩形实例
  • 2018-12-03HTML5计时器小例子_html5教程技巧
  • 2018-12-03jquery中select组件的使用方法

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • html5中JavaScript removeChild 删除所有节点_html5教程技巧
    • vue的数据交互形式有哪些
    • HTML5 Canvas的性能提高技巧经验分享
    • HTML5地理定位实例讲解
    • 使用Html5实现异步上传文件,支持跨域,带有上传进度条
    • html5 canvas绘制矩形和圆形的实例代码
    • 基于Modernizr 让网站进行优雅降级的分析
    • html5仿淘宝,京东实现红包雨效果(代码实例)
    • HTML5 在canvas中绘制文本附效果图
    • html/css应用的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有