在jsp中使用ajax技术示例:验证用户是否存在

首先说明一下几个名词的意思,我自己理解的
jquery 网上说是JavaScript库或框架。
ajax 一种可以进行异步通信的技术。
本实例用到了jquery库
具体实现步骤如下:
1.下载jquery库 我下载的是jquery-1.3.2.js,我试过了支持jsp,好像jquery.js不支持jsp,我也没测试成功,哪位大哥在jquery.js下面测试成功了,告我啊
2.把它放在一个web工程webroot目录下面的一个文件夹里面(如 js文件夹里面)
3.编写服务器端的程序:
  AjaxServlet.java
public class AjaxServlet extends HttpServlet {   
       
    protected void doGet(HttpServletRequest request, HttpServletResponse response)   
            throws ServletException, IOException {   
        response.setContentType("text/html;charset=utf-8");   
        PrintWriter out = response.getWriter();   
        String username  = request.getParameter("name");   
        System.out.println(username);   
        if(username==null){   
            out.println("请输入用户名");   
        }   
        else if(username.equals("admin")){   
         ut.println("用户名已经被注册了");   
        }   
        else{   
        out.println("用户名"+username+"可以进行注册");   
        }   
                       
    }   
    protected void doPost(HttpServletRequest request,HttpServletResponse response)   
    throws ServletException, IOException {   
           
        doGet(request,response);   
    }   
       
    public void destroy() {   
           
        super.destroy();   
    }   
       
    public void init() throws ServletException {   
           
        super.init();   
    }      
       
}  

配置web-xml文件
代码如下

<?xml version="1.0" encoding="UTF-8"?>  
<web-app version="2.4"    
    xmlns="http://java.sun.com/xml/ns/j2ee"    
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee    
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">  
    <servlet>  
    <servlet-name>AjaxServlet</servlet-name>  
    <servlet-class>com.servlet.AjaxServlet</servlet-class>  
  </servlet>  
   <servlet-mapping>  
    <servlet-name>AjaxServlet</servlet-name>  
    <url-pattern>/AjaxServlet</url-pattern>  
  </servlet-mapping>  
  <welcome-file-list>  
    <welcome-file>index.html</welcome-file>  
  </welcome-file-list>  
</web-app>  



写前台代码:
ajax.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
  <head>  
    <title>ajax示例</title>  
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->  
    <script type="text/javascript" src="js/verify.js"></script>  
    <script type="text/javascript" src="js/jquery-1.3.2.js"></script>  
       
  </head>  
     
  <body>  
    用户名校验Ajax实例,请输入要注册的用户名和密码:<br/>  
    <!-- ajax方式不需要使用表单来进行提交数据,因此不用写表单标签 -->  
    <!-- ajax方式不需要name属性,需要一个id的属性 -->  
   username:<input type="text" id="username"/><br/>  
   password:<input type="password" id="password"/><br/>  
   <input type="button" value="检测用户是否存在" οnclick="verify()"/>  
   <!-- 这个div用于存放服务器返回的结果,开始为空 -->  
   <div id="result"></div>  
   </body>  
</html> 


上面得html文件里面导入了js文件,一个是jquery-1.3.2.js,一个事verify.js文件,刚才在js文件下面存放了jquery-1.3.2.js文件,需要在js文件夹下面新建一个verify.js文件
verify.js文件代码如下:
//定义用户校验的方法

function verify(){   
    //alert("ajax实例");   
    //1.获取文本框中的内容   
    //document.getElementById("username");dom的方式   
    //jquery 查找节点方式,参数中#加在id属性值可以得到一个节点   
    //jquery 的方法返回的都是jquery的对象,可以继续在上面执行其他的jquery方法   
    var jqueryObj1 = $("#username");   
    //获取节点的值   
    var username = jqueryObj1.val();   
    //2.将文本框中的数据发送给服务器的servlet   
    //使用jquery的xmlHttpRequest对象的get请求的封装 这几种方法都行   
    //$.get(url,date,回调函数)   
    $.get("AjaxServlet?name="+username,null,callback);   
    //$.get("AjaxServlet",username,callback);   
    //$.get("AjaxServlet","name="+username,callback);      
       
       
}   
//回调函数   
function callback(data){   
   //alert("服务器端的数据回来了!!");   
   //3.接受服务器端返回的数据     
    //4.将服务器端返回的数据动态的显示在网页上   
    //找到保存结果信息的节点   
    var resultObj = $("#result");   
    //动态的改变页面节点div中的内容   
    resultObj.html(data);   
} 


到此 所有的工作都做完了,测试下就知道了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值