|
Subject: RE: [xsl] pass variables to next form on submit from XSL file From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Fri, 20 Feb 2009 16:14:02 -0000 |
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.padmanabhi@xxxxxxxxx]
> Sent: 18 February 2009 09:28
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> 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@xxxxxxxxxxxx> 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.padmanabhi@xxxxxxxxx]
> >> Sent: 17 February 2009 13:11
> >> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> >> 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
> >
> >
>
>
>
> --
> Regards,
> Himanshu Padmanabhi
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] pass variables to next fo, Michael Kay | Thread | Re: [xsl] pass variables to next fo, himanshu padmanabhi |
| RE: [xsl] variable ending with ^@, Michael Kay | Date | Re: [xsl] variable ending with ^@, Andy Chambers |
| Month |