异步请求调用

来源:互联网 发布:靠谱泰国代购淘宝 知乎 编辑:程序博客网 时间:2024/06/16 18:29

Ajax

1、创建 XMLHttpRequest 对象
2、向服务器发送请求
3、获得服务器响应
4、处理响应内容

<html><head><script type="text/javascript">var xmlhttp;function loadXMLDoc(url){  xmlhttp=new XMLHttpRequest(); //创建 XMLHttpRequest 对象  xmlhttp.onreadystatechange=state_Change; //响应处理函数  xmlhttp.open("GET",url,true);  xmlhttp.send();            //发送请求  }function state_Change(){if (xmlhttp.readyState==4&&xmlhttp.status==200)// 4 ="loaded", 200 = "OK"    //获取响应内容    { document.getElementById('T1').innerHTML=xmlhttp.responseText;}}</script></head><body onload="loadXMLDoc('/example/ajax/test1.txt')"><div id="T1"></div><br /><button onclick="loadXMLDoc('/example/ajax/test2.txt')">Click</button></body></html>

Jquery中的ajax

<!DOCTYPE html><html><head><script src="/jquery/jquery-1.11.1.min.js"></script><script>$(document).ready(function(){  $("#btn1").click(function(){    $('#test').load('/example/jquery/demo_test.txt'); //请求数据  })})</script></head><body><h3 id="test">请点击下面的按钮,通过 jQuery AJAX 改变这段文本。</h3><button id="btn1" type="button">获得外部的内容</button></body></html>

跨域请求 Jsonp

Jsonp是一个跨域解决方案。Js跨域请求数据是不可以的,但是js跨域请求js脚本是可以的。可以把数据封装成一个js语句,做一个方法的调用。跨域请求js脚本可以得到此脚本。得到js脚本之后会立即执行。可以把数据做为参数传递到方法中。就可以获得数据。从而解决跨域问题。
Jsonp详解,一片较好博文