欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

在jQuery中利用AJAX加载XML数据并解析

程序员文章站 2022-04-20 09:37:03
...
/******1,Content-Type

02 很多时候无法解析就是Content-Type的问题。

03 如果本身就是xml文件,请跳过这一步

04 动态生成的XML一定要将其设置为text/xml,否则默认就是text/html也就是普通的文本了。

05 常见语言的Content-Type设置*********/

06

07 header("Content-Type:text/xml"); //php

08 response.ContentType="text/xml" //asp

09 response.setHeader("ContentType","text/xml"); //jsp

10 /******

11 2,xml结构。

12 XML一定要封闭的,很重要!

13 例:

14 错误的XML*********/

15

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

17 <name>zhangsan</name>

18 <id>1</id>

19 <name>lisi</name>

20 <id>2</id>

21

22 //正确的

23

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

25 <stulist>

26 <student email="1@1.com">

27 <name>zhangsan</name>

28 <id>1</id>

29 </student>

30 <student email="2@2.com">

31 <name>lisi</name>

32 <id>2</id>

33 </student>

34 </stulist>

35

36 /******

37 3,解析

38 这里引用macnie的

39 遍历student(这里还是用上面那个XML,子节点是student)*********/

40

41

42 $.ajax({

43 url:'ajax.asp',

44 type: 'GET',

45 dataType: 'xml',//这里可以不写,但千万别写text或者html!!!

46 timeout: 1000,

47 error: function(xml){

48 alert('Error loading XML document'+xml);

49 },

50 success: function(xml){

51 $(xml).find("student").each(function(i){

52 var id=$(this).children("id"); //取对象

53 var idvalue=$(this).children("id").text(); //取文本

54 alert(id_value);//这里就是ID的值了。

55 alert($(this).attr("email")); //这里能显示student下的email属性。

56 //最后么输出了,这个是cssrain的写法,貌似比macnie更JQ一点

57 $('<li></li>')

58 .html(id_value)

59 .appendTo('ol');

60 });

61 }

62 });

63

64 //最后补充一条:保证服务器端是utf-8的编码,否则会乱码!同时也要保证你的xml文件也是utf-8格式的。


以上就是在jQuery中利用AJAX加载XML数据并解析的内容,更多相关内容请关注PHP中文网(www.php.cn)!