本文實(shí)例講述了java+jquery處理xml數(shù)據(jù)的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
1. AjaxJqueryXml.js如下:
復(fù)制代碼 代碼如下:
function verify(){
//1.獲取文本框中的內(nèi)容
//jquery查找節(jié)點(diǎn)的方式,參數(shù)加#加上id屬性可以找到一個(gè)節(jié)點(diǎn)
//jquery的方法返回的都是jquery的對(duì)象,可以繼續(xù)在上面執(zhí)行其他的jquery方法
var jqueryObj = $("#userName");
//獲取節(jié)點(diǎn)的值
var userName = jqueryObj.val();
//alert(userName);
//2.將文本框中的數(shù)據(jù)發(fā)送給服務(wù)遄的servlet
//使用jquery的XMLHTTPrequest對(duì)象get請(qǐng)求的封裝
//$.get("servlet/AjaxServlet?name="+userName,null,callback);
//使用jquery的xmlhttprequest對(duì)象get請(qǐng)求的封裝
//var obj = {name:"123",age:20};
$.ajax({
type: "POST",
url: "servlet/AjaxXmlServlet",
data: "name=" + userName,//發(fā)送給服務(wù)端的數(shù)據(jù)
dataType: "xml",//告訴jquety返回的數(shù)據(jù)格式
success: callback//定義交互完成,并且服務(wù)端在下返回?cái)?shù)據(jù)的回調(diào)函數(shù)
});
}
// 回調(diào)函數(shù)
function callback(data){
//3.接收服務(wù)器端返回的數(shù)據(jù)
//alert("服務(wù)器端的數(shù)據(jù)回來(lái)了!")
//需要將data這個(gè)對(duì)象中的數(shù)據(jù)解析出來(lái)
//首先需要將dom的對(duì)象轉(zhuǎn)換成jquery的對(duì)象
var jqueryObj = $(data);
//獲取message節(jié)點(diǎn)
var message = jqueryObj.children();
//獲取文本內(nèi)容
var text = message.text();
//4.將服務(wù)器返回的數(shù)據(jù)動(dòng)態(tài)的顯示在網(wǎng)頁(yè)上
//找到保存結(jié)果信息的節(jié)點(diǎn)
var resultObj = $("#result");
//動(dòng)態(tài)的改變頁(yè)面中DIV節(jié)點(diǎn)的內(nèi)容
resultObj.html(text);
//alert("");
}
2. AjaxXmlServlet.java如下:
復(fù)制代碼 代碼如下:
package com.panlong.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class AjaxXmlServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
Integer total = (Integer) req.getSession().getAttribute("total");
int temp = 0;
if(total == null ){
temp = 1;
}else{
temp = total.intValue() + 1;
}
req.getSession().setAttribute("total",total.intValue()+temp);
try {
//1.取參數(shù)
resp.setContentType("text/xml;charset=GB2312");
PrintWriter out = resp.getWriter();
StringBuilder builder = new StringBuilder();
String old = req.getParameter("name");
//2、檢查參數(shù)是否有問(wèn)題
String name = old;
builder.append("message>");
if("".equals(old) || old == null){
builder.append("用戶名必須輸入").append("/message>");
}
else
{
if("lila".equals(name)){
builder.append("該用戶名已經(jīng)注冊(cè)").append("/message>");
}else{
builder.append("該用戶名未注冊(cè),您可以注冊(cè)["+name+"]這個(gè)用戶名").append("/message>");
}
}
out.println(builder.toString());
}catch (Exception e) {
e.printStackTrace();
//3.檢驗(yàn)操作
}
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doGet(req, resp);
}
}
3. 前臺(tái)html頁(yè)面
復(fù)制代碼 代碼如下:
!DOCTYPE html>
html>
head>
title>AJAX實(shí)例/title>
meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
meta http-equiv="description" content="this is my page">
meta http-equiv="content-type" content="text/html; charset=GB2312">
script type="text/javascript" src="js/AjaxJqueryXml.js">/script>
script type="text/javascript" src="js/jquery.js">/script>
!--link rel="stylesheet" type="text/css" href="./styles.css">-->
/head>
body>
font color="blue" size="2">請(qǐng)輸入用戶名:/font>
input type="text" id="userName" />font color="red" size="2">span id="result" >*/span>/font>br/>br/>
input type="submit" name="提交" value="提交" onclick="verify()"/>
/body>
/html>
這里請(qǐng)自己添加jquery庫(kù)文件。
希望本文所述對(duì)大家的Ajax程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- jquery解析xml字符串簡(jiǎn)單示例
- jquery解析xml字符串示例分享
- jquery解析XML字符串和XML文件的方法說(shuō)明
- 通過(guò)XMLHttpRequest和jQuery實(shí)現(xiàn)ajax的幾種方式
- jQuery實(shí)現(xiàn)定時(shí)讀取分析xml文件的方法
- jquery讀取xml文件實(shí)現(xiàn)省市縣三級(jí)聯(lián)動(dòng)的方法
- jQuery讀取XML文件內(nèi)容的方法
- 淺談jQuery異步對(duì)象(XMLHttpRequest)
- 使用jquery解析XML的方法
- JQuery解析HTML、JSON和XML實(shí)例詳解
- jQuery xml字符串的解析、讀取及查找方法