Camaleón wrote:
On Thu, 17 Feb 2005 08:53:19 -0800, Robert Koberg wrote:
This isn't an XSL problem. You should get this working in plain HTML
first. You probably want something like:
<select name="combo1" onchange="transformSelection(this.value)">
<option value="file1.xml">Option1</option>
Well, is not as easy as it seems. ;-)
it seems like it is :)
I need the value of the combo box in order to use it as XSL variable:
<select name="combo1">
<option select="{$nodevalue}">Option1</option>
<option select="{$nodevalue}">Option2</option>
<option select="{$nodevalue}">Option3</option>
<option select="{$nodevalue}">Option4</option>
</select>
Why are you using a select attribute? Why not just:
<xsl:template match="files">
<select name="combo1" onchange="transformSelection(this.value)">
<xsl:apply-templates mode="create-options"/>
</select>
</xsl:template>
<!-- I would use the same elem name for 'files' children, but -->
<xsl:template match="*" mode="create-options">
<option value="normalize-space(.)">
<xsl:value-of select="."/>
</option>
</xsl:template>
This will create the dropdown. Then, when running in the browser, the
user selects an option and triggers the onChange event. You send the
current value of the select to a javascript function that loads the file
and uses it as the XML source in a client-side transform. Use another
XSL that works with this source. Place the result of the transform in
some HTML div or what-have-you -- or rewrite the whole page if you need to.
Where $nodevalue is the value of one XML node.
<files>
<node1>file1.xml</node1>
<node2>file2.xml</node2>
<node3>file3.xml</node3>
<node4>file3.xml</node4>
</files>
After that, on every "onchange" event I need to display some information:
<xsl:value-of select="document('$nodevalue')/select/some/other/node/value"/>
Well, you can't communicate the onchange event to the transformation.
You have to use javascript to communicate and setup another
transformation. Hopefully what I wrote above makes sense.
best,
-Rob
If user selects "Option 1" in combo box, I have to load file1.xml
If the user selects "Option 2 " in combo box, I have to load
file2.xml, and so on.
Thanks for your ideas, they are very welcome.
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--