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

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;
}
});

时间: 2024-10-25 02:21:25

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

SpringMVC中通过@ResponseBody返回对象,Js中调用@ResponseBody返回值,统计剩余评论字数的js,@RequestParam默认值,@PathVariable的用法

1.SpringMVC中通过@ResponseBody返回对象,作为JQuery中的ajax返回值 package com.kuman.cartoon.controller; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.commons.io.filefilter.FalseFileFilter; import org.slf4j.Logger; import org.s

jquery ajax和php实现返回值 json类型

js页面 $.ajax({ type: “POST”, dataType: ‘json’, url: “add_vote.php”, data: “touid=”+uid+”&tousername=”+username, success: function(msg){ //json解析方法一 var dataObj=eval("("+msg+")");//转换为json对象 alert(dataObj.goods_list);//输出root的子对象数量 /

C#用反射判断一个类型是否是Nullable同时获取它的根类型(转自网络)

在我们的应用程序中我们使用类描述我们的业务对象,为我们产生一些报表之类的,那就依赖大量不同的对象,我们创建一个帮助方法来转换我们的业务对象,或是一个List的业务对象到DataTables. 由于数据库表中字段可为null,对应.net 2.0以后我们可用Nullable类型来实现,那当我们业务对象类中字段有null时,并需要转换为DataTable时,这个场景产生,你可能用到以下方法: 下面的代码是一个list对象(不支持处理复杂类型)返回一个描述对象的DataTable /// <summa

js怎么判断浏览器类型

<script type="text/javascript"> function isIE(){ return navigator.appName.indexOf("Microsoft Internet Explorer")!=-1 && document.all; } function isIE6() { return navigator.userAgent.split(";")[1].toLowerCase().i

对JSON.parse()中存在转义字符的解决以及js中替换函数replace()的认识

在工作中,遇到对页面数据进行转存json格式数据后存储在数据库中.然而在显示数据时遇到无法显示json中的数据,产生的bug 问题抛出: 1.首先认识下,在JSON.parse()将后台传过来的字符串数据转存对象,遇到字符串中带有转义字符.然而JSON.parse()对转义字的符执行过程其实经历了两次转义,具体如下: 一次是字符串本身的转义: '{"test": "这是一个对象, 里面有 \\"test\\" 字段"}' 被转换成 '{"

jquery ajax请求成功,返回了数据,但是不进success的问题 【转】

这几天一直被 ajax请求成功,返回了数据,但是不进success的问题困扰着,怎么弄就是解决不了,总以为 是:$(document).ready(function(){});没起作用,一直找页面加载的方法来试,整了好几天没整出来....今天比较幸运, 在网上找到了一篇关于这方面问题的文章,按上面的方法一试,果然ok了,哈哈哈,真是太高兴了....终于解决这个问题了. 这个问题的原因(来自http://www.myexception.cn/ajax/413061.html的拷贝内容): ----

jQuery ajax 请求php遍历json数组到table中

html代码(test.html),js在html底部 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>test-jquery-ajax-list</title> </head> <body> <div class="main"> <table

【JS】判断浏览器类型

判断原理 JavaScript是前端开发的主要语言,我们可以通过 编写JavaScript程序来判断浏览器的类型及版本.JavaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性来分辨,另 一种是通过分析浏览器的userAgent属性来判断的.在许多情况下,值判断出浏览器类型之后,还需判断浏览器版本才能处理兼容性问题,而判断浏览器的 版本一般只能通过分析浏览器的userAgent才能知道. 判断是否为手机浏览器 匹配navigator.userAgent是否含有字符串App

ajax异步处理时,如何在JS中获取从Servlet或者Action中session,request

ssh项目中,我需要登陆某个页面(如a.jsp),通过onblur()鼠标失去焦点后来触发js函数(函数是ajax请求)请求到相应的action,处理完成后将数据存放到session对象里面,然后在a.jsp中用el表达式获取想要的数据.可是问题来了,不知道为什么在打开浏览器第一次登录a页面时,a页面不会显示想要的数据,刷新后就有数据了,之后也正常. 后来查询了各种博客,各种网上的一些说法,最后总结出了自己的一套思路,仅供参考. 以下是在Action中 根据用户id查询出用户信息 .......