jsp+ajax發(fā)送get請求的方法

字號:


    本文實例講述了ajax發(fā)送get請求,然后通過jsp頁面來接收處理的實現(xiàn)方法。分享給大家供大家參考。具體實現(xiàn)方法如下:
    ajax發(fā)送get請求
    這里用一個實例演示ajax發(fā)送get請求,實例具體要求為一個注冊頁面,當用戶填寫完用戶名稱時,該輸入框失去焦點后會通過ajax向后臺發(fā)送驗證信息,如果用戶名不是admin則通過驗證,否則不通過驗證。
    下面先看jsp頁面具體信息:
    代碼如下:
    <form action=servlet/loginservlet method=post>
    <table>
    <tr>
    <td>用戶賬號:</td>
    <td><input type=text name=username onblur=checkuser(this)/></td>
    </tr>
    <tr>
    <td>用戶密碼:</td>
    <td><input type=password name=password/></td>
    </tr>
    <tr>
    <td><input type=submit value=注冊/></td>
    <td><input type=reset value=重置></td>
    </tr>
    </table>
    </form>
    這里后臺處理信息用的是servlet進行處理
    首先看web.xml配置信息
    代碼如下:
    <servlet>
    <servlet-name>loginservlet</servlet-name>
    <servlet-class>login.loginservlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>loginservlet</servlet-name>
    <url-pattern>/servlet/loginservlet</url-pattern>
    </servlet-mapping>
    然后看具體的servlet類的doget方法
    代碼如下:
    public void doget(httpservletrequest request, httpservletresponse response)
    throws servletexception, ioexception {
    response.setcontenttype(text/html;charaet=utf-8);
    printwriter out = response.getwriter();
    string name=request.getparameter(username);
    system.out.println(name);
    if(name.equals(admin))
    out.print(false);
    else
    out.print(true);
    out.flush();
    out.close();
    }
    在servlet類中做一個簡單的驗證。
    在jsp的表單中,對輸入用戶名稱的輸入框設置了失去焦點的事件,也就是onblur事件。下面看javascript代碼。
    代碼如下:
    <script type=text/javascript>
    //創(chuàng)建xmlhttprequest
    function createxmlhttprequest(){
    if(window.xmlhttprequest){
    return new xmlhttprequest();
    }else{
    return new activexobject(microsoft.xmlhttp);
    }
    }
    //當用戶賬號輸入框失去焦點時調用該方法
    function checkuser(obj){
    //獲取輸入框輸入的值
    var user = obj.value;
    //如果輸入框中的值為空,那么彈窗提示,并且讓該輸入框獲得焦點
    if(!user){
    alert(用戶名不能為空!);
    obj.focus();
    return;
    }
    //不為空時,使用ajax請求向后臺發(fā)送信息,驗證該用戶名是否可用
    //get請求字符串
    var url=servlet/loginservlet?username=+user;
    //調用方法創(chuàng)建xmlhttprequest對象
    xmlhttprequest = createxmlhttprequest();
    //設置回調函數(shù)
    xmlhttprequest.onreadystatechange=finish;
    //初始化xmlhttprequest
    xmlhttprequest.open(get,url,true);
    //發(fā)送請求
    xmlhttprequest.send(null);
    }
    //回調函數(shù)
    function finish(){
    if(xmlhttprequest.readystate == 4&& xmlhttprequest.status == 200){
    var result = xmlhttprequest.responsetext;
    if(result ==true){
    alert(用戶名可用!);
    }else{
    alert(用戶名不可用!);
    }
    }
    }
    </script>
    希望本文所述對大家的jsp+ajax程序設計有所幫助。