zoukankan      html  css  js  c++  java
  • 简单Ajax例子

    一、概述

    1.程序执行流程:

    (1)点击id="testBtn"的按钮,触发validate();

    (2)validate()中有调用request.open方法与server交互(在url指定的jsp页面中,调用writer编写了xml文件并以responseXML返回给request);

    (3)交互状态有变时会调用callback函数,callback判定状态,若交互成功则读取responseXML中的值;

    (4)根据读取到的responseXML中的值动态生成innerHTML返回给页面。

    二、代码

    1.index.html

     1 <html>
     2 <head>
     3     <script>
     4         
     5         function validate(){
     6             var idField = document.getElementById("testBtn");
     7             var url = "validate.jsp?id="+escape(idField);
     8             req = new XMLHttpRequest();
     9             req.open("GET", url, true);
    10             req.onreadystatechange = callback;
    11             req.send(null);
    12             
    13         }
    14         
    15         function callback(){
    16             if(req.readyState == 4){
    17                 //alert(req.status);
    18                 //alert(req.responseXML);
    19                 //alert( msg);
    20                 if(req.status == 200){
    21                     var msg = req.responseXML.getElementsByTagName("msg")[0];
    22                     setMsg(msg.childNodes[0].nodeValue);
    23                 }
    24             }
    25         }
    26         
    27         function setMsg(msg){
    28             var mdiv = document.getElementById("ajaxMsg");
    29             if(msg == "abc"){
    30                 mdiv.innerHTML = "<div>America Born Chinese</div>";
    31             }else if(msg == "123"){
    32                 mdiv.innerHTML = "<div>阿拉伯数字</div>";
    33             }
    34             
    35         }
    36     </script>
    37 </head>
    38 <body>
    39     <input type="submit" id="testBtn" onclick="validate()" value="mybutton"/>
    40     <span id="ajaxMsg"></span>
    41 </body>
    42 </html>

    2.validate.jsp

    1 <%
    2 response.setContentType("text/xml");
    3 response.setHeader("Cache Control", "no store");
    4 response.setHeader("Pragam","no-cache");
    5 response.setDateHeader("Expires", 0);
    6 response.getWriter().write("<msg>abc</msg>");
    7 %>

    三、运行结果

  • 相关阅读:
    唐李问对 简单飞扬
    【关键字】Javascript js 身份证号码 检测 规则 18位 15位 简单飞扬
    司马法 简单飞扬
    实现身份证的15位转18位 简单飞扬
    JAVA验证身份证号码 简单飞扬
    页面验证的类型 简单飞扬
    模拟MSN和QQ的上线提示效果 区别IE和FF浏览器 简单飞扬
    孙子兵法 简单飞扬
    吴子 简单飞扬
    C# WPF MVVM 实战 2.1
  • 原文地址:https://www.cnblogs.com/shamgod/p/4599044.html
Copyright © 2011-2022 走看看