问题标签 [xsl-variable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xslt - 使用打印出 XSL 变量的值
在根据节点是否存在设置变量之后,我正在尝试输出变量的文字字符串值。我认为条件检查逻辑是正确的。但它没有输出值......
我希望它输出“假”或“真”的文字字符串。但它没有输出任何东西。请帮忙!谢谢!!!
xslt - xsl:sequence 总是非空的吗?
我不明白这个样式表的输出:
当应用于以下 XML 时:
由xsl:message
元素写入的输出为:
我期待这个:
为什么count($seq)
在这种情况下总是返回 1?您将如何更改变量定义,以便我以后可以测试它是否为空?(简单<xsl:variable name='seq' select='*' />
会返回预期的答案,但不是一个选项......我想更改此模板between
中的变量,并稍后测试它是否为空)。
xslt - 如何从 html 或 javascript 提供样式表变量值
我的问题是关于在使用 xsl 的客户端上呈现。这已经在 IE 中工作了,但我想让它在 Firefox 上工作
一、样式表(variablexsl.xsl) 这里唯一特别的是存在
<xsl:variable name="module" select="string('RES')"/>
现在,html 文件 index.html
所以最后当我点击 EDU 和 RES 按钮时,文本在 IE 中正确显示,但在任何其他浏览器中都没有。我尝试使用 document.evaluate() 但不断收到错误.. 最后转向 SO 寻求帮助!
谢谢!
解决方案: 对样式表进行以下更改,然后使用 xsltprocessor().setParameter 为我工作。
对样式表的更改:(在样式表声明之后添加一个新的 xsl:param)
然后修改<xsl:variable>
声明<xsl:template match="/">
如下:
火狐客户端代码
//function loadXMLDoc()
使用XMLHttpRequest
对象发出 ajax 请求,并返回responseXML
给调用者。
arrays - 如何在 XSLT 中处理不同循环中的数组
我在处理以下 xml 代码时遇到问题:
我需要将此 xml 转换为 EXCEL 兼容文件(我使用 urn:schemas-microsoft-com:office:office、urn:schemas-microsoft-com:office:excel 和 urn:schemas-microsoft-com:office:spreadsheet 命名空间它)
问题是我不知道如何在行/列/值上应用来自标题/标题元素 dataType + dataFormat(如果可用)的信息。这将帮助 Excel 识别其单元格内的数据类型。很明显,我需要保持秩序。列数及其元数据是动态的,每个 XML 可能不同。
我需要得到这样的东西:
我尝试了几次创建有用且有效的东西,但我所有的尝试都失败了。当前版本在这里:
这个版本没用,因为我不能使用任何变量值作为变量名,它必须是常量值。解析整个数据以某种方式工作,但是当我尝试实现数据类型和数据格式时,它就坏了。
编辑:有关数据类型和数据格式的信息被放置在 head 元素中,该元素包含有关列及其标题的所有信息。列在单独的模板中处理,它们不直接连接到头部元素的列定义。仅通过元素的顺序来维护关系。我需要处理每一行和每个单元格(对于正确的列)的数据类型和可能的数据格式(这是可选的)信息,而不仅仅是标题。
xslt - 覆盖xsl中的变量
我只需要覆盖变量xsl
我需要更改变量的值。
我对 xsl 很陌生,请帮助我如何实现这一点。这可能很愚蠢,但我不知道..
html - 我们可以在 XSL 变量中插入 HTML 标记吗
我只是想确认我们是否可以在 xsl 变量中插入 html 标签?例子
如果我使用
我应该得到
可能吗?我努力了
尽管我没有得到想要的输出
java - xsl变量初始化,方法不被调用
我是 xslt 的新手,有一个问题。
我有一个包含所有必要的 setter 和 getter 的 validate 类。例如它有这样的方法:
当我启动我的应用程序时,我看到这个方法没有被调用。
当我在我的 xsl 文件中添加这样的代码时,我只在控制台中看到我的测试消息:
那么在第一次使用时我的错误或 xsl:variable 在哪里初始化?
我有这个代码:
javascript - 传递给 JavaScript 代码的 XSL 变量
我看到有人问过类似的问题,但没有任何帮助。
我有一个变量,称为' var ':
我想这样使用它:
问题:更换???带有var的值。
我已经尝试过设置{$var}
以及<xsl:value-of select="$var"/>
,但由于存在三个嵌套括号,因此最新的将不起作用。
xml - 一次选择整个节点集,而不是递归地选择每个节点
我一直在寻找这个,可能实际上没有办法做到这一点:
我的 xml 文件看起来像这样:
我已经找到了无数<para>
为自己选择每个的方法,但我想<para>
一次匹配所有节点(加上封闭的子节点)并将块存储在一个变量中。这甚至可能吗?
为了防止误解:如果上面的块被一个额外的节点包围,让我们称之为它<exmpl>
,我会简单地匹配子<exmpl>
节点并获得我想要的节点块。如果没有这样的父节点,我如何获得相同的结果 - 使用具有唯一内容的兄弟节点(“播放”和“结束”)似乎不起作用?
xslt - XSLT 1.0 不能在 xsl:value-of select 中选择变量
我尝试转换由多个来源生成的一段 XML。如果我将文本直接输入到 value-of select 语句中,它会按预期工作。但是一旦我尝试使用变量,它就不再起作用了。
如果我在 xsl:for-each 语句中使用变量,它也可以正常工作。这是运行良好的 XSL
但是,如果我在 xsl:value-of select 中使用变量,它就不会按照下一个代码块中的说明工作。我尝试了很多组合,例如只使用一个带有“firstname”、“firstname | fname”的变量,尝试连接(...)文本等......
输入 XML:
只有一次我得到结果,因为我在变量中指定了“帐户/名字”。但是这样我总是只在每次迭代中获得第一个元素的值。似乎在指定变量时它失去了上下文(处理器当前位于“帐户”实体内,应该选择“名字作为子节点”)。
我读到 value-of select 语句从 XSLT 1.0 到 2.0 发生了一些变化,但我不完全理解有什么区别(我对 XSLT 很陌生)。
我必须如何指定 XSL 才能使其工作?
更新:代码块 1 中的预期输出
编辑:我应该提到的是这些模板将/可以被修改,因此如果所有“变量”都在一个地方会更容易。可能是目标未命名为“联系人”,而是其他名称,并且在整个文档中对其进行更改容易出错且多余。这些变量也用于由 XmlReader 读取的另一个进程。我尽量减少配置和冗余的麻烦。