首页 > 您现在的位置:

网站前端制作之jquery ajax详解

2022-03-05 营销型网站制作公司

营销型网站制作公司

ajax经由 HTTP 恳求加载近程数据。
jQuery 底层 AJAX 完成。宏大易用的高层完成见 $.get, $.post 等。$.ajax() 前往其创立的 XMLHttpRequest 工具。大多数情况下你无需直接把持该函数,除非你必要把持不经常把持的选项,以获得更多的矫捷性。
最宏大的情况下,$.ajax()能够不带任何参数直接把持。
注重,全数的选项都能够经由$.ajaxSetup()函数来全局设置。
假定要措置惩罚$.ajax()获得的数据,则必要把持回调函数。beforeSend、error、dataFilter、success、complete。
beforeSend 在发送恳求之前调用,并且传入一个XMLHttpRequest作为参数。
error 在恳求堕落时调用。传入XMLHttpRequest工具,描画毛病范例的字符串和一个非常工具(假定有的话)
dataFilter 在恳求胜利以后调用。传入前往的数据和"dataType"参数的值。并且必须前往新的数据(能够也许是措置惩罚过的)传递给success回调函数。
success 当恳求以后调用。传入前今后的数据,和包括胜利代码的字符串。
complete 当恳求完成以后调用这个函数,不论胜利或失利。传入XMLHttpRequest工具,和一个包括胜利或毛病代码的字符串。
$.ajax()函数凭仗效劳器供给的信息来措置惩罚前往的数据。假定效劳器报告说前往的数据是XML,那末前往的成果就能够用通俗的XML方式或jQuery的选择器来遍历。假定见获得其他范例,比如HTML,则数据就以文本方式来对待。
经由dataType选项还能够指定其他不合数据措置惩罚体例。除纯挚的XML,还能够指定 html、json、jsonp、script或text。
此中,text和xml范例前往的数据不会经由措置惩罚。数据仅仅宏大的将XMLHttpRequest的responseText或responseHTML属性传递给success回调函数,
'''注重''',我们必须确保网页效劳器报告的MIME范例与我们选择的dataType所婚配。比如说,XML的话,效劳器端就必须声明 text/xml 或 application/xml 来获得同等的成果。
假定指定为html范例,任何内嵌的JavaScript都邑在HTML作为一个字符串前往之前履行。雷同的,指定script范例的话,也会先履行效劳器端生成JavaScript,然后再把脚本作为一个文本数据前往。
假定指定为json范例,则会把获得到的数据作为一个JavaScript工具来剖析,并且把构建好的工具作为成果前往。为了完成这个目的,他起首测验测验把持JSON.parse()。假定浏览器不撑持,则把持一个函数来构建。JSON数据是一种能很苟且经由JavaScript剖析的布局化数据。假定获得的数据文件寄存在近程效劳器上(域名不合,也就是跨域获得数据),则必要把持jsonp范例。把持这类范例的话,会创立一个查询字符串参数 callback=? ,这个参数会加在恳求的URL后面。效劳器端该当在JSON数据前加上回调函数名,以便完成一个有效的JSONP恳求。假定要指定回调函数的参数名来庖代默许的callback,能够经由设置$.ajax()的jsonp参数。
注重,JSONP是JSON格局的扩展。他恳求一些效劳器端的代码来检测并措置惩罚查询字符串参数。更多信息能够参阅 最后的文章。
假定指定了script或jsonp范例,那末当从效劳器回收到数据时,理论上是用了