jquery $.ajax()取xml数据的小问题解决方法


Posted in Javascript onNovember 20, 2010

开始的代码如下:

$.ajax({ 
type: "get", 
url: "Database/App_all.xml", 
dataType: "xml", 
timeout: 2000, 
beforeSend: function () {}, 
success: function (xml) { 
$(xml).find("app[id='id-1']").find("auther").appendTo($("#contain")); 
}, 
error: function () { 
alert("ajax failed!"); 
} 
});

也就是,从App_all.xml这个文件中找到id为“id-1”的这一项,并将继续在其子节点中找到auther标签,并将其内容加入到id 为contain
的div中,xml中我要查找的内容为<auther>cocept</auther>,我就是想把cocept这个字段取出来,放入容器中

结果这段代码在firefox中生效,在opera中也生效,但是在Safari和chrome中却没有效果,于是我上jQuery的官方论坛,和StackFlowover
论坛提问,后者有人回复我:

I assure you I was using $.ajax with Chrome just five hours ago at the office, and had no such problem.

I also imagine they use it here on SO and I have no problems here. I have no problems on jQueryUI in Chrome. I think it is your code.
大意就是斩钉截铁的说他用起来没有问题,是我自己的问题,我也纳闷了,后面也有人给我的建议更复杂:

You should use chrome's or safari's built-in developer tools (ctrl+shift+i) to track JS errors and track actual AJAX requests.

Is your code wrapped in document.ready? Is there any erros in javascript console? Also try to output something after success callback line.
Another cause for this could be incorrect mime-type for your XML file returned by server. It should be [Content-type: text/xml].
You can check that in chrome's or safari's built-in developer tools - just look for headers tab when xml resource is selected.
If it 's actual problem, you may need to tweak web-server configuration (main config or .htaccess for apache) to return correct mime-type

毕竟是自学jquery ajax框架刚起步……就遇到这么棘手的问题,的确麻烦……

但是,由于我一个不经意的发现,问题迎刃而解……

我用firebug查看成功后的页面元素状态,发现:

<div id="contain"> 
<auther>cocept</auther> 
</div>

我恍然大悟,原来这种直接用pretendTo插入的方法会连tagname也插入进去,难怪chrome和Safari不能识别(从另一个方面来说Firefox原来强大这么多……)

于是修改后的代码如下:

success: function (xml) { 
$("#contain").html($(xml).find("app[id='id-1']").find("auther").text()); 
}

先取出所需元素的text()的值,再以修改html的方法html()插入容器中,大功告成啦!测试均通过
Javascript 相关文章推荐
传智播客学习之JavaScript基础篇
Nov 13 Javascript
JavaScript 学习笔记(九)call和apply方法
Jan 11 Javascript
javascript下判断一个元素是否存在的代码
Mar 05 Javascript
Jquery跨域获得Json时invalid label错误的解决办法
Jan 11 Javascript
解析使用js判断只能输入数字、字母等验证的方法(总结)
May 14 Javascript
js实现页面转发功能示例代码
Aug 05 Javascript
js判断浏览器是否支持html5
Aug 17 Javascript
js事件处理程序跨浏览器解决方案
Mar 27 Javascript
JS实现表单验证功能(验证手机号是否存在,验证码倒计时)
Oct 11 Javascript
基于JQuery和原生JavaScript实现网页定位导航特效
Apr 03 jQuery
Javasript设计模式之链式调用详解
Apr 26 Javascript
解决vue cli使用typescript后打包巨慢的问题
Sep 30 Javascript
简单实用的js调试logger组件实现代码
Nov 20 #Javascript
扩展javascript的Date方法实现代码(prototype)
Nov 20 #Javascript
javascript AOP 实现ajax回调函数使用比较方便
Nov 20 #Javascript
AJAX异步从优酷专辑中采集所有视频及信息(JavaScript代码)
Nov 20 #Javascript
javascript来定义类的规范小结
Nov 19 #Javascript
Javascript面象对象成员、共享成员变量实验
Nov 19 #Javascript
js 创建快捷方式的代码(fso)
Nov 19 #Javascript
You might like
PHP学习之PHP变量
2006/10/09 PHP
跟我学Laravel之安装Laravel
2014/10/15 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
php求今天、昨天、明天时间戳的简单实现方法
2016/07/28 PHP
php实现将数据做成json的格式给前端使用
2018/08/21 PHP
PHP单元测试框架PHPUnit用法详解
2019/01/23 PHP
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
javascript如何实现360度全景照片问题汇总
2016/04/04 Javascript
用NodeJS实现批量查询地理位置的经纬度接口
2016/08/16 NodeJs
JavaScript事件用法浅析
2016/10/31 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
BootstrapTable加载按钮功能实例代码详解
2017/09/22 Javascript
vue input输入框关键字筛选检索列表数据展示
2020/10/26 Javascript
p5.js实现故宫橘猫赏秋图动画
2019/10/23 Javascript
JS指定音频audio在某个时间点进行播放
2020/11/28 Javascript
Python中Django框架下的staticfiles使用简介
2015/05/30 Python
python解决Fedora解压zip时中文乱码的方法
2016/09/18 Python
在python win系统下 打开TXT文件的实例
2018/04/29 Python
Python使用Phantomjs截屏网页的方法
2018/05/17 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
Python3.7 新特性之dataclass装饰器
2019/05/27 Python
Python搭建Spark分布式集群环境
2019/07/05 Python
Python队列RabbitMQ 使用方法实例记录
2019/08/05 Python
pytorch实现用Resnet提取特征并保存为txt文件的方法
2019/08/20 Python
pytorch 可视化feature map的示例代码
2019/08/20 Python
python实现横向拼接图片
2020/03/23 Python
python TCP包注入方式
2020/05/05 Python
Ted Baker美国官网:英国时尚品牌
2018/10/29 全球购物
高级编程求职信模板
2014/02/16 职场文书
党员干部2014全国两会学习心得体会
2014/03/10 职场文书
食品安全演讲稿
2014/09/01 职场文书
出纳工作检讨书范文
2014/12/27 职场文书
物业前台接待岗位职责
2015/04/03 职场文书
幼儿园保教工作总结2015
2015/10/15 职场文书
浅谈Python中的函数(def)及参数传递操作
2021/05/25 Python