使用jquery处理ajax返回XML


JS代码:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>   

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

      <script type="text/javascript">

      function jj(){          

        $.ajax({

            url: ‘AjaxServlet‘,  //提交的地址

            type: ‘post‘,        //提交方式

            dataType: ‘XML‘,     //数据的类型,XML、text,注意XML是大写的

            error: function(){   //出现异常时调用回调函数

                alert(‘无法返回正确的数据‘);

            },

            //当成功返回数据时进行的操作,

            //如果前面dataType设置了XML,那么参数xml是XML文档的内容

            //如果前面dataType设置了text,那么参数xml是字符串

            success: function(xml){   

                //解析XML跟解析HTML差不多,获取文本值时最好用text(),因为有些jquery版本不支持html()解析XML

                alert($("b",xml).text());

                 $("info",xml).each(function(){

                     alert($(this).text());

                 });

            }

        });

      }

        

    </script>

  </head>

  <body>

    <div>

        <input type="button" value="点击进入ajax" onclick="jj();"/>

    </div>

  </body>

</html>

Servlet代码:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

package 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 AjaxServlet extends HttpServlet {

    public AjaxServlet() {

        super();

    }

    public void destroy() {

        super.destroy(); 

        

    }

    public void doGet(HttpServletRequest request, HttpServletResponse response)

            throws ServletException, IOException {

        doPost(request, response);

    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)

            throws ServletException, IOException {

        // 这里响应类型必须是text/xml

        response.setContentType("text/xml;charset=gbk"); 

        request.setCharacterEncoding("gbk");

        PrintWriter out = response.getWriter();

        // XML头,没有这个可能Javascript解析不出XML,最好设一下

        StringBuilder sb = new StringBuilder("<?xml version=\"1.0\" encoding=\"gbk\"?>");

        // 根元素<root></root>一定需要,否则Javascript解析不出XML,但名字不一定要叫root

        sb.append("<root><info id=‘1‘><b>a</b></info ><info id=‘1‘>b</info><memo id=‘2‘>c</memo><memo>d</memo></root>");

        //写出XML

        out.println(sb.toString());

        out.flush();

        out.close();

    }

    public void init() throws ServletException {}

}

时间: 2024-10-19 20:32:20

使用jquery处理ajax返回XML的相关文章

jquery实现ajax,返回json数据

jquery实现ajax可以调用几种方法 我经常用的是$get(url,data,callback,type)方法 其中url是异步请求的页面(可以是.ashx文件),data是参数,callback是回调函数,而type是返回数据的类型.type有xml,html,json,text等. 首先,页面引用jquery.js 在页面写ajax处理的js函数 1 2 3 4 5 6 7 8 9 10 11 12 13 function initMeeting() {             $.ge

jquery 或ajax返回的中文数据总是乱码解决方案

要将Servlet中的 response.setContentType("text/html;charset=utf-8")这行代码放在 PrintWriter out = response.getWriter()之前. jquery 或ajax返回的中文数据总是乱码解决方案,布布扣,bubuko.com

jquery操作Ajax返回的JSON值

$.post( 'XXX.php', { col: value }, function(data) { var getData = eval( "(" + data + ")" ); //必须用括号,真蛋疼 alert( getData.xx ); } ); jquery操作Ajax返回的JSON值,布布扣,bubuko.com

ajax返回xml如何处理

首先在php页面生成xml文档并输出,然后在js中处理xml数据: var xhr = createXhr(); xhr.onreadystatechange = getinfo; xhr.open("get",'./07.php'); xhr.send(null); function getinfo(){ if(xhr.readyState==4 && xhr.status==200){ var node = xhr.responseXML; //文档节点对象 var

PHP AJAX 返回XML数据

例子:利用AJAX间接访问数据库,查出Nation表中的数据,返回XML数据,并将Nation表中的数据显示在下拉列表框中 外层建一个下拉列表框 1 <select id="sel"> 2 </select> JQurey代码 $(document).ready(function(e) { //调用ajax $.ajax({ url:"XMLChuLi.php", dataType:"XML", //返回XML数据 suc

jquery操作ajax返回的页面元素

这两天工作不忙,正好从朋友那里拿到一个某个应用的开发文档,相关数据放在了mongodb里,自己电脑可以本地开启服务器然后通过给的借口来获取数据.由于这是一个比较大比较全的一个完整项目,也没有那么多经历全部做一下,就找了其中几部分来做一下,由于是一个电商类的移动端,所以那些数据都是动态加载上去的,通过ajax动态获取然后添加到页面上,所以主要是模板引擎的使用和ajax的运用,其他就是一些样式的操作.虽然以前也做过,但是这次碰到了一个问题,就是需要在ajax返回的内容里找到某个元素,然后给那个元素绑

Ajax返回xml类型数据

ajax可以返回文本类型数据和xml类型数据,xml是计算机通用语言 可以使用js解析返回xml类型数据的dom对象 前端页面 <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name=

20151228:AJax返回XML值

aspx代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="s

Jquery 等待ajax返回数据loading控件ShowLoading组件

1.意义 开发项目中,前台的页面要发请求到服务器,服务器响应请求返回数据到前台,这段时间,有可能因为返回的数据量较大导致前台页面出现短暂性的等待,此时如果用户因不知情而乱点击有可能造成逻辑混乱,所以此时需要在加载数据中将前台进行提示在加载数据中,利用jquery的遮罩组件可以完成这个功能需求. 2.实现步骤 (1).下载 showLoading.css    jquery.showLoading.min.js  两个文件. (2).在jsp中引入这两个文件 <link href="styl