jQuery版本1.8.3

待解析的xml为:

<message><user><command>Login</command></message>

跟踪jQuery源码,发现如下:

// Go to html and back, then peel off extra wrappers
tag = ( rtagName.exec( elem ) || ["", ""] )[1].toLowerCase();
wrap = wrapMap[ tag ] || wrapMap._default;
depth = wrap[0];
div.innerHTML = wrap[1] + elem + wrap[2];

自己写测试例子:

var div = document.createElement("div");
div.innerHTML = "<message><user>\
<command>Login</command>\
</message>";
div.childNodes[0].childNodes[0].childNodes[0].outerHTML;
//"<command></command>"

这里输出的时候就是空节点了,实际的xml被转换为:

<message><user><command></command>Login</user></message>

这不是jQuery的问题,我的Chrome版本为 32.0.1700.107 m,后发现command是HTML5新增标签。

继续探索问cschool的例子:

<command type="command">Click Me!</command>

在chrome developer tools里面显示为:

编辑时为:

<menu>
<command type="command"></command>Click Me!
</menu>

至此应该得知,这是Chrome给我们的惊喜了!

总结几点:
1、使用jQuery解析xml不靠谱;
2、一些html使用的标签解析异常,比方说command;
3、在IE(比如IE 9.0.8112.16421)里标签会自动大写;
4、and so on

使用jQuery解析xml时command节点解析失败的更多相关文章

  1. 在解析XML时要注意解析元素和解析标签属性的区别

    解析元素时: Sting str = ele.elementText("name"); 而解析标签属性时: String key = ele.attributeValue(&quo ...

  2. dom4j解析xml时取消DTD验证

    解决方式整合一下,就分两种: 1.用setFeature() SAXReader reader = new SAXReader();reader.setValidation(false); reade ...

  3. [讨论] Window XP 安装msxml6后,load xml时提示schema验证失败

    现象:在windows XP x64下,使用用户安装的msxml6库加载xml文件时失败. 进一步说明: 该xml文档使用了W3C的名称空间 xmlns:xsi= "http://www.w ...

  4. xstream解析xml时遇到特殊字符出错

    在xml中有"&"符号时,解析xml出错 解决办法: 将&替换成&

  5. cocos2d-x解析xml时的Bug

    cocos2d-x中使用tinyxml解析xml配置.如下: tinyxml2::XMLDocument doc; if (tinyxml2::XML_SUCCESS != doc.LoadFile( ...

  6. dom4j解析xml时报出文件提前结束

    在写javaweb小项目的时候,用dom4j解析xml报出如下错误: org.dom4j.DocumentException:Error    .......    Nested exception: ...

  7. Pugixml一种快速解析XML文件的开源解析库

    Pugixml是一个轻量级的C++ XML开源解析库,DOM形式的解析器.接口和丰富的遍历和修改操作,快速的解析,此外支持XPath1.0实现数据查询,支持unicode编码: 使用Pugixml可通 ...

  8. mybatis源码-Mapper解析之SQL 语句节点解析(一条语句对应一个MappedStatement)

    目录 一起学 mybatis 0 <sql> 节点解析 1 解析流程 2 节点解析 2.1 解析流程 2.2 <include> 节点的解析 2.3 Node.ELEMENT_ ...

  9. java解析xml(使用jdom解析xml)

    第一步: 装入jar包:下载地址:http://www.jdom.org/downloads/index.html 第二步: 在项目中加入jar包 jdom-2.06.jar 放入lib中 第三步: ...

随机推荐

  1. Hadoop 源码编译导出

    https://svn.apache.org/repos/asf/hadoop/common/branches/branch-trunk-win/BUILDING.txt http://www.src ...

  2. Struts2 - Check Login Interceptor

    Struts2使用Interceptor做用户登陆检查: 1)新增一个bean: User.java package com.my.beans; import java.util.Date; impo ...

  3. sqlite 下载的 ZIP 包的区别

    https://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki sqlite-netFx20-binary-bundle- ...

  4. Windows2008 Patching(打补丁)

    我们都知道Windows的服务器都需要打补丁的,要不然漏洞那个叫多啊.Windows的系列服务器打补丁无非就是两种方法: 1. 通过Internet打补丁: Go to control Panel-& ...

  5. android学习笔记21——消息提示Toast

    消息提示可细分为两种:大量消息提示——当程序有大量图片.信息需要展示时,采用对话框消息提示: 小量消息提示——当程序只有少量信息需要呈现给用户时,采用轻量级的对话框——Toast; Toast ==& ...

  6. docker配置环境

    debian: curl -sSL https://get.docker.com/ | sh curl -sSL https://get.daocloud.io/docker | sh daoclou ...

  7. C#委托和事件讲解

    委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易.它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每 ...

  8. 批量修改Sqlserver中数据库对象的所属架构

    执行以下SQL,将执行结果拷贝出来,批量执行既可. SELECT 'ALTER SCHEMA dbo TRANSFER ' + s.Name + '.' + p.Name FROM sys.Proce ...

  9. Mysql触发器简明使用

    触发器:trigger创建触发器的语法mysql> delimiter $mysql> create trigger 触发器名称 after/before(触发时间) insert/upd ...

  10. 补一篇关于Jackson和Gson的文章

    一.关于Gson的问题 问题1. 如果对象属性里有[],表示它是一个列表,需要用List对象进行封装,不能用String来定义,不然转不了 问题2. Gson在解析的时候,如果json中有转义字符 \ ...