Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.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
Xml XSL转换输出到javascript_Xml_Xslt - Fatal编程技术网

Xml XSL转换输出到javascript

Xml XSL转换输出到javascript,xml,xslt,Xml,Xslt,我有一个xml: <Data> <Revenue> <revDate>2015-05-31 00:00:00.000</revDate> <source>1</source> <currencyId>50</currencyId> ... </Revenue> <Revenue> ... </Revenue> </Data> 20

我有一个xml:

<Data>
<Revenue>
  <revDate>2015-05-31 00:00:00.000</revDate>
  <source>1</source>
  <currencyId>50</currencyId>
  ...
</Revenue>
<Revenue>
  ...
</Revenue>
</Data>

2015-05-31 00:00:00.000
1.
50
...
...
我需要使用xsl转换填充html模板。 逻辑取决于“源”节点是否为1

我将源节点捕获在xsl中收入数据的第一行中,如下所示-

<xsl:variable name="sourceID">
    <xsl:value-of select="Data/revenue[@source][1]/text()"/>
</xsl:variable>

然后将其传递给javascript函数-

<a href=".." onClick="javascript:return isSourceLinked('{sourceID}');">

但是,这不起作用,因为参数sourceID的空/空检查总是失败(无论它是否包含值)


我做错了什么-如何捕获节点值?

您的sourceID表达式错误。试试看

<xsl:variable name="sourceID" select="Data/Revenue/source[1]/text()" />


您的xpath似乎有误。。。revenue=>R capital,@source是属性而不是元素,尽管在xml中source是元素。您是如何生成Javascript的?还是将XSL变量“传递”到Javascript中?你在这里遗漏了一个步骤。
revenue
不应该是
revenue
吗?@DavidDossot:是的。Tnx。