Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String XSL在不使用模板的情况下将faultblock和apppend值循环到字符串_String_Loops_Xslt_Append - Fatal编程技术网

String XSL在不使用模板的情况下将faultblock和apppend值循环到字符串

String XSL在不使用模板的情况下将faultblock和apppend值循环到字符串,string,loops,xslt,append,String,Loops,Xslt,Append,如何在不使用XSLT中的模板的情况下循环故障块并将值附加到字符串/变量。根据验证错误,故障块可能出现一次、两次或n次 期望输出:11个无效ID;22无效密码;。。。。。神经网络误差 <status> <code>00</code> <description>Success</description> <faultblock> <faultcode>11</faultc

如何在不使用XSLT中的模板的情况下循环故障块并将值附加到字符串/变量。根据验证错误,故障块可能出现一次、两次或n次

期望输出:11个无效ID;22无效密码;。。。。。神经网络误差

<status>
    <code>00</code>
    <description>Success</description>
    <faultblock>
        <faultcode>11</faultcode>
        <faultdesc>Invalid ID</faultdesc>
    </faultblock>
    <faultblock>
        <faultcode>22</faultcode>
        <faultdesc>Invalid Password</faultdesc>
    </faultblock>
    <faultblock>
        <faultcode>nn</faultcode>
        <faultdesc>Error</faultdesc>
    </faultblock>
</status>

我猜您希望只使用for-each语句获得输出,而不是使用多个模板

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    version="1.0">

  <xsl:output method="text"/>

  <xsl:template match="/">
    <xsl:for-each select="//faultblock">
      <xsl:value-of select="faultcode"/>
      <xsl:text>-</xsl:text>
      <xsl:value-of select="faultdesc"/>
      <xsl:text>;</xsl:text>
    </xsl:for-each>
  </xsl:template>
  
</xsl:stylesheet>

-
;

查看此处的工作情况:

不确定“不使用模板”是什么意思。如果没有至少一个模板,XSLT将无法工作。请尝试使用simple或任何其他选项来实现。如果使用模板使它更简单,很高兴使用模板解决方案谢谢Sebastien,让我试试这个选项