Ajax知识点总结

                   

AjaxAsynchronous  JavaScript  and  XML

功能:允许浏览器与服务器通信而无需刷新当前页面

例如:用户名检验,购物车更新等,能极大提高用户体验度

 

服务器与客户端的语言传输格式

1HTML:轻松嵌入预订格式

2XML:通用,但沉重

3Json:方便简单,但有一定安全隐患

 

                      原生Ajax

原理:通过使用XMLHTTP组件XMLHttpRequest的方法,进行异步数据读取。

运行流程:

    var  request  =  new  XMLHttpRequest( );       

    request.open(“method”,“url”);//建立对服务器的调用

    request.send(); //向服务器发送请求

    Request.onreadystatechange = function(){}//追踪改变

    request.readystate ==4  //判断响应是否完成,共四个状态

    Request.status == 200||Request.status ==304//判断响应是否可用

    request.responseText  //以文本格式返回响应结果

request.responseXML //XML格式返回响应结果

             jQuery封装的Ajax方法

1$.load( urlmethod,回调函数 ).直接载入需要的HTML

   Method默认为GET方法

   可通过 url+空格+selector 来选择指定处返回。

   如:var url = this.href+“ h2  a”;

2$.get( urlargs,回调函数) , $.post(urlargs,回调函数 )

主页:   

<script type="text/javascript" src="jquery-1.7.2.js"></script>

   <script type="text/javascript">

       $(function(){

            $(":input[name = 'username']").change(function(){

                 var val = $(this).val();

                      val = $.trim(val);

                 if(val |= ""){

                    var url = "valiateUserName";

                    var args = {"userName":val,"time":new Date()};

                    $.post(url,args,function(data){  

                        $("#message").html(data);

                    });

                 }

            });

       })

   </script>

  </head>

  

  <body>

   <form method="post" action="">  

       UserName:

       <br/><input type="text" name="username">

       <div id="message"></div>

       <br/>

       <input type="submit" value="submit"/>

     </form>

  </body>

</html>   

 

Servlet的配置和映射

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.5" 

xmlns="http://java.sun.com/xml/ns/javaee" 

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

  <servlet>

    <servlet-name>valiateUserNameServlet</servlet-name>

    <servlet-class>valiateUserNameServlet</servlet-class>

  </servlet>

 

  <servlet-mapping>

    <servlet-name>valiateUserNameServlet</servlet-name>

    <url-pattern>/valiateUserName</url-pattern>

  </servlet-mapping>

</web-app>

 

继承自HttpServletvaliateUserNameServlet

import java.io.IOException;

import java.util.Arrays;

import java.util.List;

 

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

 

 

public class valiateUserNameServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

 

public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {

           List<String> userName = Arrays.asList("AA","BBB","CCC");

           String username = request.getParameter("userName");

           String result = null;

           if(userName.contains(username)){

         result = "<font color='red'>该用户名已经被使用</font>";   

           }else{

         result= "<font color='red'>该用户名可以被使用</font>";   

           }

           //response常用的三个方法

           response.setContentType("text/html;charset=UTF-8");

           response.setCharacterEncoding("UTF-8");

           response.getWriter().print(result);  //在浏览器中打印

}

}

 

注意:1.jQuey中的ajax方法中url,必须和WEB.XMLServlet的数据匹配

      2.可通过$("#message").html(data);的方式在指定位置显示需要的内容

      3.谨记List<String> userName = Arrays.asList("AA","BBB","CCC");

      4.Listcontains()方法,判断是否包含

 

                                                            易-14-10-21-1-25

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值