jQuery使用ajax跨域获取数据的简单实例
jQuery使用ajax跨域获取数据的简单实例
varwebMethod="http://localhost:54473/Service1.asmx/HelloWorld"; jQuery.support.cors=true; //之前没有加这句老是提示notransport,我没去深想。 $.ajax ({ type:"POST", contentType:"application/x-www-form-urlencoded", dataType:"html", url:"http://www.*****.com",//这里是网址 success:function(data){alert(data);}, timeout:30000, error:function(XMLHttpRequest,textStatus,errorThrown){ alert(errorThrown); } });
参数
options
类型:Object
可选。AJAX请求设置。所有选项都是可选的。
async
类型:Boolean
默认值:true。默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为false。
注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
beforeSend(XHR)
类型:Function
发送请求前可修改XMLHttpRequest对象的函数,如添加自定义HTTP头。
XMLHttpRequest对象是唯一的参数。
这是一个Ajax事件。如果返回false可以取消本次ajax请求。
cache
类型:Boolean
默认值:true,dataType为script和jsonp时默认为false。设置为false将不缓存此页面。
jQuery1.2新功能。
complete(XHR,TS)
类型:Function
请求完成后回调函数(请求成功或失败之后均调用)。
参数:XMLHttpRequest对象和一个描述请求类型的字符串。
这是一个Ajax事件。
contentType
类型:String
默认值:"application/x-www-form-urlencoded"。发送信息至服务器时内容编码类型。
默认值适合大多数情况。如果你明确地传递了一个content-type给$.ajax()那么它必定会发送给服务器(即使没有数据要发送)。
context
类型:Object
这个对象用于设置Ajax相关回调函数的上下文。也就是说,让回调函数内this指向这个对象(如果不设定这个参数,那么this就指向调用本次AJAX请求时传递的options参数)。比如指定一个DOM元素作为context参数,这样就设置了success回调函数的上下文为这个DOM元素。
就像这样:
$.ajax({url:"test.html",context:document.body,success:function(){ $(this).addClass("done"); }});
data
类型:String
发送到服务器的数据。将自动转换为请求字符串格式。GET请求中将附加在URL后。查看processData选项说明以禁止此自动转换。必须为Key/Value格式。如果为数组,jQuery将自动为不同值对应同一个名称。如{foo:["bar1","bar2"]}转换为'&foo=bar1&foo=bar2'。
dataFilter
类型:Function
给Ajax返回的原始数据的进行预处理的函数。提供data和type两个参数:data是Ajax返回的原始数据,type是调用jQuery.ajax时提供的dataType参数。函数返回的值将由jQuery进一步处理。
dataType
类型:String
预期服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包MIME信息来智能判断,比如XMLMIME类型就被识别为XML。在1.4中,JSON就会生成一个JavaScript对象,而script则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:
•"xml":返回XML文档,可用jQuery处理。
•"html":返回纯文本HTML信息;包含的script标签会在插入dom时执行。
•"script":返回纯文本JavaScript代码。不会自动缓存结果。除非设置了"cache"参数。注意:在远程请求时(不在同一个域下),所有POST请求都将转为GET请求。(因为将使用DOM的script标签来加载)
•"json":返回JSON数据。
•"jsonp":JSONP格式。使用JSONP形式调用函数时,如"myurl?callback=?"jQuery将自动替换?为正确的函数名,以执行回调函数。
•"text":返回纯文本字符串
error
类型:Function
默认值:自动判断(xml或html)。请求失败时调用此函数。
有以下三个参数:XMLHttpRequest对象、错误信息、(可选)捕获的异常对象。
如果发生了错误,错误信息(第二个参数)除了得到null之外,还可能是"timeout","error","notmodified"和"parsererror"。
这是一个Ajax事件。
global
类型:Boolean
是否触发全局AJAX事件。默认值:true。设置为false将不会触发全局AJAX事件,如ajaxStart或ajaxStop可用于控制不同的Ajax事件。
ifModified
类型:Boolean
仅在服务器数据改变时获取新数据。默认值:false。使用HTTP包Last-Modified头信息判断。在jQuery1.4中,它也会检查服务器指定的'etag'来确定数据没有被修改过。
jsonp
类型:String
在一个jsonp请求中重写回调函数的名字。这个值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,比如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。
jsonpCallback
类型:String
为jsonp请求指定一个回调函数名。这个值将用来取代jQuery自动生成的随机函数名。这主要用来让jQuery生成度独特的函数名,这样管理请求更容易,也能方便地提供回调函数和错误处理。你也可以在想让浏览器缓存GET请求的时候,指定这个回调函数名。
password
类型:String
用于响应HTTP访问认证请求的密码
processData
类型:Boolean
默认值:true。默认情况下,通过data选项传递进来的数据,如果是一个对象(技术上讲只要不是字符串),都会处理转化成一个查询字符串,以配合默认内容类型"application/x-www-form-urlencoded"。如果要发送DOM树信息或其它不希望转换的信息,请设置为false。
scriptCharset
类型:String
只有当请求时dataType为"jsonp"或"script",并且type是"GET"才会用于强制修改charset。通常只在本地和远程的内容编码不同时使用。
success
类型:Function
请求成功后的回调函数。
参数:由服务器返回,并根据dataType参数进行处理后的数据;描述状态的字符串。
这是一个Ajax事件。
traditional
类型:Boolean
如果你想要用传统的方式来序列化数据,那么就设置为true。请参考工具分类下面的jQuery.param方法。
timeout
类型:Number
设置请求超时时间(毫秒)。此设置将覆盖全局设置。
type
类型:String
默认值:"GET")。请求方式("POST"或"GET"),默认为"GET"。注意:其它HTTP请求方法,如PUT和DELETE也可以使用,但仅部分浏览器支持。
url
类型:String
默认值:当前页地址。发送请求的地址。
username
类型:String
用于响应HTTP访问认证请求的用户名。
xhr
类型:Function
需要返回一个XMLHttpRequest对象。默认在IE下是ActiveXObject而其他情况下是XMLHttpRequest。用于重写或者提供一个增强的XMLHttpRequest对象。这个参数在jQuery1.3以前不可用。
以上这篇jQuery使用ajax跨域获取数据的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。