AJAX

Posted 烫烫烫屯屯屯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AJAX相关的知识,希望对你有一定的参考价值。

AJAX 即 “Asynchronous javascript And Xml”, (异步Javascript 和 XML),是一种在无需重新加载整个网页的情况下,能更新部分网页的技术;基于javascript;

XMLHttpRequest 对象(XHR)

XMLHttpRequest 对象用于在后台与服务器交换数据,就如同一个后台线程一般在用户没有感觉的情况下与服务器通信;

新建XHR对象:xmlhttp = new XMLHttpRequest();

向服务器发送数据

向服务器发送数据,使用 XMLHttpRequest 对象的 open() 和 send() 方法:

open方法的 url 即为要提交数据的目的jsp页面,如果在这个url上传递了参数,则send方法就不需要参数了;如果open的url仅仅为页面地址,则传送数据需要由send方法完成;

onreadystatechange 事件

当 readyState 改变时,就会触发 onreadystatechange 事件,该事件会调用我们自己设置的处理函数

 

服务器的响应数据

服务器的响应数据在 XMLHttpRequest 对象的 responseText 或 responseXML 属性中;

例子

<span>输入账号 :</span>
<input id="name" name="name" onkeyup="check()" type="text"> 
<span id="checkResult"></span>
  
<script>
var xmlhttp;
function check(){
  var name = document.getElementById("name").value;
  var url = "http://how2j.cn/study/checkName.jsp?name="+name;  //要发送到的jsp页面,以及传递的参数
  
  xmlhttp = new XMLHttpRequest(); //新建 AJAX 所需要的主要对象
  xmlhttp.onreadystatechange = checkResult; //自定义的响应处理函数
  xmlhttp.open("GET",url,true);   //设置访问的页面
  xmlhttp.send();  //执行访问
}
  
function checkResult(){
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    document.getElementById(\'checkResult\').innerhtml=xmlhttp.responseText;
   
}
  
</script>

 

以上是关于AJAX的主要内容,如果未能解决你的问题,请参考以下文章

Javascript代码片段在drupal中不起作用

前端面试题之手写promise

Ajax 片段元标记 - Googlebot 未读取页面内容

执行AJAX返回HTML片段中的JavaScript脚本

javascript AJAX片段

Spring MVC 3.2 Thymeleaf Ajax 片段