2013-06-26 118 views
0

获得属性值,我有这样的XML:根据另一个属性

<Forms> 
<Form ID="5472" TemplateID="588" DocType="1" FileName="635073174134006854.pdf" HiulActType="1"/> 
<Form ID="5472" TemplateID="2619" DocType="1" FileName="635073174134006854.pdf" HiulActType="1"/> 
HiulDocCode="414" TimeStamp="2013-06-20-09_29_13_317421"> 
</Forms> 

我想其中有attribte TemplateID = 2619

我试过形式的属性HiulActType:

`//Form[@TemplateID='2619']/@HiulActType/text() 

不会工作.`

+0

只有'text()'函数是多余的。因此,/ /形式[@ TemplateID ='2619']/@ HiulActType'应该(如果没有错字)。如果没有,你的xml可能会隐藏命名空间问题。 –

回答

2

属性节点没有文本节点子节点。从路径表达式中删除/text()

我看到越来越多的人将/text()作为一种神奇的仙尘撒在XPath表达式中。这几乎总是多余的,而且通常是错误的。如果您确实想强制将结果转换为字符串而不是依靠自动转换,请不要使用/text(),请使用string()函数。

相关问题