我有一个示例格式的xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<EnvioDTE version="1.0" xmlns="http://www.sii.cl/SiiDte" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sii.cl/SiiDte EnvioDTE_v10.xsd">
<SetDTE ID="SetDoc">
<Referencia>
<NroLinRef>1</NroLinRef>
<TpoDocRef>802</TpoDocRef>
<FolioRef>25800-220-POAMPCG</FolioRef>
<FchRef>2021-09-30</FchRef>
<RazonRef>25800-220- POA-MPCG00001</RazonRef>
</Referencia>
<Referencia>
<NroLinRef>2</NroLinRef>
<TpoDocRef>803</TpoDocRef>
<FolioRef>EDP 03</FolioRef>
<FchRef>2021-09-30</FchRef>
<RazonRef />
</Referencia>
<Referencia>
<NroLinRef>3</NroLinRef>
<TpoDocRef>801</TpoDocRef>
<FolioRef>176644799</FolioRef>
<FchRef>2021-09-30</FchRef>
<RazonRef />
</Referencia>
....bla bla bla
我需要获取标签text "只有当另一个标签"TpoDocRef"等于& ';801&;当我得到它的时候,我需要把它存储起来,放进一个像这样的td里,这是我目前得到的结果,但是当我创建pdf
时它没有显示出来<td style="font-size:12px;border-left:2px solid black">
<xsl:value-of select="sii:EnvioDTE/sii:*/sii:DTE/sii:Documento/sii:Referencia[TpoDocRef='801']/sii:FolioRef"/>
</td>
最后我应该能得到"176644799">
Thanks in advance
找到答案了。问题出在命名空间上。当我尝试在[]
中获取节点时,它也应该具有名称空间,如下所示:
<xsl:value-of select="sii:EnvioDTE/sii:*/sii:DTE/sii:Documento/sii:Referencia[sii:TpoDocRef='801']/sii:FolioRef"/>