博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ajax:数据传输方式简介
阅读量:5900 次
发布时间:2019-06-19

本文共 1325 字,大约阅读时间需要 4 分钟。

在异步应用程序中发送和接收信息时,常见的可以选择以纯文本和XML作为数据格式(您可以参考jquery下的
),现在还有一种比较流行的方式:JSON(JavaScript Object Notation)。好了,下面举例说明这三种数据格式在ajax的异步应用。

一、纯文本方式

1、发送/接收数据:

Code is cheap.看代码: 

ContractedBlock.gif
Code
几个附加文件源码:

ContractedBlock.gif
Code
一一保存文件,ctrl+F5,运行试试看吧。

上面这种方式是最简单最直接也是最有效的方式。熟练使用最佳。

二、XML方式

1、发送XML数据

ContractedBlock.gif
Code
jsTest.htm文件不变,AjaxOperations.aspx的HTML文件内容不变,服务器端.CS处理代码如下:

ContractedBlock.gif
Code
很简单的代码,运行看看吧。

2、接收XML数据:

我们看到,上面两个.js文件里处理返回数据时都用到了xmlReq.responseText的属性,下面我们试试看xmlReq.responseXML属性:

ContractedBlock.gif
Code
同样,jsTest.htm文件不变,AjaxOperations.aspx的HTML文件内容不变,服务器端.CS处理代码稍作修改如下:

ContractedBlock.gif
Code

好了,前面两种方法是大家平时开发中比较熟悉的方式,下面我们来看看第三种方式。

三、JSON方式
json的准备知识:
json是一种简单的数据格式,比xml更轻巧。json是JavaScript 的原生格式,这意味着在 JavaScript 中处理json格式的 数据不需要任何特殊的API 或工具包。json的语法规则其实很简单:对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。看个例子先:

ContractedBlock.gif
Code

上面的定义方式看起来很简单,但是如果字段众多,命名方式混杂,出错的概率大大增加,怎么办?这时候你就会想到用程序的方式生成json数据。json提供了json.js包,专门提供了几种常用的json处理函数。下来, ,将其引入然后就可以简单的使用object.toJSONString()转换成json数据。看代码:

ContractedBlock.gif
Code
也可以使用
eval或者parseJSON()方法
来转换json数据到object:

ContractedBlock.gif
Code
关于json.js的学习,请参考网上其他资源,这里我不再赘述了。说了这么多,实践环节开始了:

ajax利用json发送/接收数据:

ContractedBlock.gif
Code
附加文件,AjaxOperations.aspx的html页面没有改变,AjaxOperations.aspx.cs代码稍作调整如下:

ContractedBlock.gif
Code
jsTest.html引入json.js文件(必须下载json.js文件,否则js报错),如下:

ContractedBlock.gif
Code

json入门学习就到这里了。希望这篇入门文章对你有帮助。

本文转自JeffWong博客园博客,原文链接:http://www.cnblogs.com/jeffwongishandsome/archive/2009/01/10/1326012.html,如需转载请自行联系原作者

你可能感兴趣的文章
喧喧发布 2.5.1 版本,支持移动版和桌面端同时登录
查看>>
揭秘:深度网络背后的数学奥秘
查看>>
Android Fragment使用详解
查看>>
SSM+maven实现答题管理系统(三)
查看>>
Python面试题
查看>>
Confluence 6 已经存在的安装配置数据库字符集编码
查看>>
【死磕 Spring】----- IOC 之解析 bean 标签:开启解析进程
查看>>
国内域名如何转入 GoDaddy,域名转入GoDaddy要注意?
查看>>
Java开发之上帝之眼系列教程前言和章节目录汇总
查看>>
隐马尔科夫模型笔记
查看>>
【Android学习】View点击事件的分发机制(一)
查看>>
Laravel Predis Error while reading line from the server.
查看>>
使用Orange Pi Zero做小小服务器(Netdata篇)
查看>>
杭州造云记 | 甲子光年
查看>>
Linux Daily2
查看>>
【开源】慢速 UIPickerView 动画实现
查看>>
Kotlin项目实战开发
查看>>
Html<a>标签href的困惑记载
查看>>
Python笔记
查看>>
Eclipse插件开发_学习_02_GEF入门实例
查看>>