I don't know Perl (last used it more than 10 years ago) or its API to XSLT,
so I can't comment on your syntax. But you seem to have the idea almost
right.
If you want $argu1 to be a stylesheet parameter passed from your Perl code
to your XSLT code, then
(a) you must declare it in the stylesheet using <xsl:param>
(b) the reference to the value should be <input value="{$argu1}"/>, not
<input value="$argu1"/>.
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: himanshu padmanabhi
[mailto:himanshu(_dot_)padmanabhi(_at_)gmail(_dot_)com]
Sent: 18 February 2009 09:28
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] pass variables to next form on submit from XSL file
Do you mean to say I should do this in xsl file ..
<form>
<td>
<input type=hidden name="argu1" value="$argu1">
</td>
</form>
and I should call xsl file using this perl sentense.
my $results = $stylesheet->transform($source, string =>
"'$str'",val => "'1'",argu1 => "'$argument'");
so that in the next form(which is called by xsl file),I can
use $in{'argu1'} ?
On Tue, Feb 17, 2009 at 6:57 PM, Michael Kay
<mike(_at_)saxonica(_dot_)com> wrote:
Remember that your stylesheet is just generating an HTML
page. First
work out what HTML you want to generate, then remember that
it's just data.
There's nothing magic about the fact that part of the page is
Javascript code, as far as the XSLT is concerned it's data
like everything else.
So, your calling application (myfile.cgi) extracts the
variables from
the HTTP request, it passes them to the stylesheet as stylesheet
parameters, and the stylesheet copies them into the
generated client-side Javascript code.
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: himanshu padmanabhi
[mailto:himanshu(_dot_)padmanabhi(_at_)gmail(_dot_)com]
Sent: 17 February 2009 13:11
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] pass variables to next form on submit from XSL file
How to pass variables from XSL file to next form on form submit?
CODE
myfile.cgi
$str=$in{'some_value'};
my $parser = XML::LibXML->new();
my $xslt = XML::LibXSLT->new();
my $source = $parser->parse_file($xmlfile);
my $style_doc = $parser->parse_file($xslfile);
my $stylesheet = $xslt->parse_stylesheet($style_doc);
my $results = $stylesheet->transform($source, string =>
"'$str'",val => "'1'");
print $stylesheet->output_string($results);
myfile.xsl
<form name="form1" method="POST" action="file1.cgi">
<tr>
<td>
<xsl:value-of select="label"/>
</td>
<td>
<xsl:value-of select="desc"/>
</td>
<td>
<select>
<xsl:call-template name="str:tokenize">
</xsl:call-template>
</select>
</td>
</tr>
</form>
<xsl:choose>
<xsl:when test="$val > 1">
<script>
document.mon.submit();
</script>
</xsl:when>
</xsl:choose>
</xsl:template>
file1.cgi
Here I want to access $string and $val.XSL should give
them on form
submit.How to access those here?
----------------------------
Regards,
Himanshu Padmanabhi
--~------------------------------------------------------------------
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>
--~--
--~------------------------------------------------------------------
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>
--~--
--
Regards,
Himanshu Padmanabhi
--~------------------------------------------------------------------
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>
--~--
--~------------------------------------------------------------------
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>
--~--