0

Saxon-CEとXSLT2.0を使用して、ページ上のコントロールを生成および操作しています。コンボボックスの生成は問題ありませんが、コンボボックスを変更すると、コンボボックスのオプションエントリから値を取得できないようです。XSLTコードの例を次に示します。

<xsl:stylesheet version="2.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:ixsl="http://saxonica.com/ns/interactiveXSLT"
extension-element-prefixes="ixsl">

<xsl:template match="/">

<xsl:result-document href="#comboBox">
  <select id="myBox">
     <option value="1">One</option>
     <option value="2">two</option>
  </select>
</xsl:result-document>

</xsl:template>

<xsl:template match="select[@id='myBox'] mode=ixsl:onchange">
  <xsl:variable name="myVal" select="option/@value'/>
   .... code that affects what is displayed ...
</xsl:template>

</xsl:stylesheet>

ユーザーがcombboxの値を変更すると、選択したオプションの値が変数$myValに格納されます。次に、その変数を使用して、メインページの変換に影響を与えます。現在、私が持っているものはまったく機能しません(現在、ユーザーが選択したものではなく、すべてのオプションのすべての値を取得します)。

アイデア?

4

1 に答える 1

2

試す

<xsl:variable name="control" select="."/>
<xsl:variable name="value" select="ixsl:get($control, 'value')"/>

名前空間宣言でxmlns:ixsl="http://saxonica.com/ns/interactiveXSLT"

于 2013-01-14T12:51:39.890 に答える