U30U3012-30 09:15

理解jquery ajax中的datatype属性选项值

jquery中ajax的dataType属性用于指定服务器返回的数据类型,如果不指定,jQuery 将自动根据HTTP包MIME信息来智能判断,如果datatype选项不填写的话,会将返回的数据当成字符串处理。

一、ajax语法

复制代码 代码如下:

jQuery.ajax([settings])

参数说明

settings:用于配置 Ajax 请求的键值对集合。可以通过 $.ajaxSetup() 设置任何选项的默认值。

二、ajax的datatype选项的值

1、"xml":返回 XML 文档,可用 jQuery 处理。

2、"html"::返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。

3、"script"::返回纯文本JavaScript 代码。不会自动缓存结果,除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)

4、"json": 返回 JSON 数据 。

5、"jsonp": JSONP 格式。使用JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数,经常被用来同主域名下不同二级域名下的跨域请求。

6、"text": 返回纯文本字符串。

下面是关于jquery ajax中的datatype相关问题

datatype设置为html的时候返回的只是纯文本,没有什么好说的,设置成xml的时候返回的是一个xml document对象,
比如返回下面这么一个xml

< xml version="1.0" encoding="utf-8" >
<documentElement>
<table>
<provinceID>110000</provinceID>
<province>北京市</province>
<provinceID>120000</provinceID>
<province>天津市</province>
</table>
</documentElement>

这就需要用XMLDocument之类来操作,还要考虑浏览器
其实jquery本身也可以解析xml,举个简单的例子

$.ajax({
type: "Get",
dataType: "xml",
url: "test.xml",
success: function(datas){
$("province",datas).each(function(i){ 
alert($($("provinceID",datas)[i]).text() + "_" + $(this).text());
});
}
});

test.xml里面的内容就是上面的xml,这样datas就是返回的xml文档对象,lz可以自己试一试

其实相对来说我更喜欢使用datatype:"json",使用json数据对于javascript来说解析起来就更方便了

官场书屋二维码

000
评论

为您推荐

  • Django中的Ajax

    Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站!AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 不是新的......
    U28U2812-30 09:15
  • 浅谈Python Opencv中gamma变换的使用详解

    伽马变换就是用来图像增强,其提升了暗部细节,简单来说就是通过非线性变换,让图像从暴光强度的线性响应变得更接近人眼感受的响应,即将漂白(相机曝光)或过暗(曝光不足)的图片,进行矫正。伽马变换的基本形式如下:大于1时,对图像的灰度分布直方图具有......
    U39U3912-23 21:46
  • java 验证码的生成实现

    java 验证码的生成实现所谓验证码,就是将一串随机产生的数字或符号,生成一幅图片, 图片里加上一些干扰,例如随机画数条直线或者画一些点,由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能。验证码中之所以加上凌......
    U36U3612-23 22:00
  • ai怎么手绘风景照片效果的插画?

    美丽的风景照片是拍摄出来的,但是我们也可以绘制出来,该怎么绘制呢?今天,我们就来画一画风景照片,从中学习一下美丽风景的画法,掌握红色、黄色、绿色、紫色的搭配应用,体会一下蒙版工具的使用方法,详细请看下文介绍。软件名称:Adobe Illus......
    U14U1412-23 21:41
  • Win10快速预览版19536怎么手动更新升级?

    12月17日,微软向快速通道用户推送了Windows 10 Insider Preview 19536.1000 (rs_prerelease - 预发布)系统更新。注意:此W indows 10版本是第一个与Windows 10特定发行版......
    U34U3412-23 21:42
搜索

聊骚我们

试客网微信公众号 试客网公众号