在Chrome浏览器与IE和Firefox的XML解析
问题描述:
我使用JQuery来解析从服务器返回的一些XML,并使用它来填充表;不幸的是,这只适用于Firefox和IE,但不适用于Chrome。以下相关代码:在Chrome浏览器与IE和Firefox的XML解析
var xmlDoc = $.parseXML(xml);
$(xmlDoc).find('z\\:row').each (
function()
{//this stuff never gets executed in Chrome}
我使用$(xmlDoc中).find试过( “[节点名称= Z:行]”)为好,但给了我一个无效的语法错误。我已经验证过,传递给$ .parseXML的xml确实是一个有效且完整的XML文档。
(我在找理由“Z:行”是,这是从SharePoint Web服务输出。)
任何帮助将不胜感激! :)
编辑:问题已解决。发现谁在我正在查看的网站上发布nodeName语法的人发布了无效的语法。它需要是'[nodeName =“z:row”]'是一个独立的字符串,所有引号都是强制性的。 *摇头*
答
问题已解决,仍然不错。发现谁在我正在查看的网站上发布nodeName语法的人发布了无效的语法。它需要是'[nodeName =“z:row”]'是一个独立的字符串,所有引号都是强制性的。 *摇头*
答
我觉得你的问题就出在线路中断后function()
JavaScript有一个行后隐含分号插入。在某些浏览器上,他们可以知道function()
不应该换行,但在ECMAScript标准中不存在。
做function(){
(移动{
上)
编辑:哦,如果解决了,则忽略该项以上。然而,按照开发指南如http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
我正在使用XML现在,我的东西是非常像你的一样,我必须从服务器返回值,并填充输入,但相反使用jQuery,我使用PHP。检查了这一点(http://www.geekpedia.com/tutorial156_How-to-read-XML-using-PHP-DOM.html) – 2011-06-01 14:36:46
很高兴你解决了这个问题。如果您将解决方案作为答案进行发布并将其标记为已接受,则可以帮助其他人在未来搜索时找到答案。 :) – Spudley 2011-06-01 14:38:13
哈哈,我感到你的痛苦。我希望浏览器开发人员能够遵循相同的编码标准,这样我们就可以避免这种混乱......我发现Chrome并不支持z \\:row。如在,它只是简单地不承认它。 * miffed * 斯普德利,会做,但我的代表不够高,自我反应8小时。 :( – sichinumi 2011-06-01 14:40:16