用于比较两个XSL值的Javascript

时间:2016-01-21 10:11:07

标签: javascript xml xslt

我正在尝试针对另一个xsl值验证xsl值,(使用Javascript存储在XML中的最小值/最大值(它必须是JS),并且我无法使用简单易用的HTML 5验证方法,耶!我无法弄清楚如何做到这一点。

XSL如下(这正确地提取了我的值)

 <xsl:attribute name="test1">
      <xsl:value-of select="data/object/object/object/property/property/property/format/@answer"></xsl:value-of>
   </xsl:attribute>

这是拉入最小值的XSL,

 <!-- Min Value-->
 <input type="hidden" name="minvalue">
 <xsl:attribute name="value">
 <xsl:value-of select="/options/@minimum"></xsl:value-of>
 </xsl:attribute>
</input>

我希望使用输入类型本身或名称值进行比较,但我能找到的只是html 5验证,我需要这个奇怪的这个&gt;。&lt;

任何帮助或指向正确的方向都会很棒(PS第一次很抱歉任何代码格式化问题等)

1 个答案:

答案 0 :(得分:0)

如果您只是尝试在XSLT中执行此操作,您可以尝试执行此类操作...假设这些内容无论如何都属于同一模板。

<xsl:variable name="test1" select="number(data/object/object/object/property/property/property/format/@answer)" />

<xsl:variable name="minimum" select="number(/options/@minimum)" />

<xsl:choose>
  <xsl:when test="$test1 > $minimum">
     <!-- output whatever you want here because the condition is satisifed -->
  </xsl:when>
  <xsl:otherwise>
    <!-- output for when condition is not satisfied -->
  </xsl:otherwise> 
</xsl:choose>

如果您共享完整的XSLT,还有其他方法可以执行此操作 - 可能具有结构化模板,使得它们仅在这些条件下匹配。还有一些方法可以在HTML页面上的JavaScript中执行此操作,但我们需要查看最终输出而不是XSLT。