jQuery的ajax方法的属性以及jsonp的随机数问题
原文地址【 http://www.cnblogs.com/know/archive/2011/10/09/2204005.html 】
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Untitled Page</title> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <script type="text/javascript"> jQuery(document).ready(function(){ $.ajax({ type : "get", async:false, url : "ajax.ashx", dataType : "jsonp", jsonp: "callbackparam",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(默认为:callback) jsonpCallback:"success_jsonpCallback",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名 success : function(json){ alert(json); alert(json[0].name); }, error:function(){ alert('fail'); } }); var a="firstName Brett"; alert(a); }); </script> </head> <body> </body> </html>
ps:
1.每一次的ajax请求接口的时候,都会自动加上_=1233423432类似的随机数,导致接口请求不能正常使用TS缓存,于是要想去掉那个url中的随机参数,使用ajax方法时需要加几个属性:
基于上面的代码,再加上一个 cache:true, 至此,请求的url中就不会再自动加上url随机参数了。。。
2.jsonpCallback这个参数的值是指 回调函数的函数名,函数必须是全局的,闭包的会调用不到。如果方法不存在,也不会报错。
持之以恒!