xml解析时getElementById方法返回为null
2016-04-11 10:19
459 查看
Document有一个getElementById的方法,在文档中的解释是:
返回具有带给定值的 ID 属性的
注: 具有名称 "ID" 或 "id" 的属性不属于类型 ID,除非这样定义。
<root>
<test id="test">
haha
</test>
</root>
上面是一个简单的xml实例,发现在java中通过getElementById("test")的方法,获取到的是一个null值,
一查询才知道,正如文档中所说,即使设置id属性,Document也是无法识别的,因为不属于类型ID
必须要在xml有相关定义。
这时就需要dtd出场了。声明一个简单的内部样式即可解决问题:
<!DOCTYPE root [
<!ELEMENT root ANY>
<!ATTLIST test id ID #REQUIRED >
]>
在xml头部加上这个,最后一行的意思是将test元素中的id属性设置为类型ID
这样,再在java执行getElementById("test")就可以获取test元素了。
返回具有带给定值的 ID 属性的
Element。如果不存在此类元素,则此方法返回
null。如果多个元素具有带该值的 ID 属性,返回哪一个元素是不确定的。
注: 具有名称 "ID" 或 "id" 的属性不属于类型 ID,除非这样定义。
<root>
<test id="test">
haha
</test>
</root>
上面是一个简单的xml实例,发现在java中通过getElementById("test")的方法,获取到的是一个null值,
一查询才知道,正如文档中所说,即使设置id属性,Document也是无法识别的,因为不属于类型ID
必须要在xml有相关定义。
这时就需要dtd出场了。声明一个简单的内部样式即可解决问题:
<!DOCTYPE root [
<!ELEMENT root ANY>
<!ATTLIST test id ID #REQUIRED >
]>
在xml头部加上这个,最后一行的意思是将test元素中的id属性设置为类型ID
这样,再在java执行getElementById("test")就可以获取test元素了。
相关文章推荐
- 没有document.getElementByName方法
- js中document.write使用过程中的一点疑问解答
- document.all与getElementById、getElementsByName、getElementsByTagName用法区别-getElementById
- document.compatMode的CSS1compat使用介绍
- 原生js操作checkbox用document.getElementById实现
- jquery之Document元素选择器篇
- jQuery获取iframe的document对象的方法
- JavaScript访问样式表代码
- IE下document.referrer 拒绝访问的解决方法
- javascript getElementById 使用方法及用法
- PDP Document 代码注释规范第1/2页
- document 和 document.all 分别什么时候用
- PHP Document 代码注释规范
- js 中 document.createEvent的用法
- 让 JavaScript 轻松支持函数重载 (Part 2 - 实现)
- document.forms[].submit()使用介绍
- JavaScript的document对象和window对象详解
- document.getElementById的简写方式(获取id对象的简略写法)
- JavaScript入门教程(9) Document文档对象
- document.getElementById方法在Firefox与IE中的区别