您的位置:首页 > Web前端 > JQuery

jquery ajax中支持哪些返回类型以及js中判断一个类型常用的方法?

2017-10-26 08:25 711 查看
1 jquery ajax中支持哪些返回类型

在JQuery中,AJAX有三种实现方式:$.ajax() , $.post , $.get()。

预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在

1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调

函数。可用值:

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

•"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。这种方式是最常见的方式(默认方式),jQuery(这里如果返

回值中有JS代码,并不执行)执行 sucuess回调函数,比如html()、append()等等,这些函数将html代码装载到当前页面的时候才执行其中包

含的js代码,而且该代码只执行一次并不缓存。

•"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有

POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)

•"json": json方式和html方式在请求和服务器中完全是一样,请求的返回值实际上都是String对象,有两点不同,第一:html方式的时候并没有限制返回的字符串格式,而json方式的时候,必须符合json协议的规范。第二:html方式请求完成之后没有做任何的操作直接回调sucuess,而json多了一步就是加了eval,执行返回的字符串,看看源码data = eval_r("(" + data + ")");返回json对象。

•"jsonp":jsonp方式的交互方式和js是一样的,本身xmlHttpRequest对象并不能跨域访问,但是script标签的src可以跨域访问,这里就注意两个概念:第一Ajax是不能跨域操作的,第二jQuery的jsonp是可以跨域操作,jsonp到底是什么东西呢?他是一个非官方的定义,目前的规范,需要服务器和客户端进行配合使用

•"text": 返回纯文本字符串

2js中判断一个类型常用的方法?

// 判断类型的方法

xfa.extend({

isFunction: function ( obj ) {

return typeof obj === 'function';

},

isString: function ( obj ) {

return typeof obj === 'string';

},

isLikeArray: function ( obj ) {

return obj && obj.length && obj.length >= 0;

},

isDOM: function ( obj ) {

return !!obj.nodeType;

}

});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐