Again, though, bear in mind that the <s:proprty/> tag will be evaluated on the server during page generation whereas the Javascript will be executed later, on the client, after the page is delivered.

There's no way to 'interact with the action stack in Javascript', since the action stack only exists during page generation and the Javascript runs later.

That said, techniques like the one Musachy shows below, or the previous examples, *will* allow you to push data from the action stack into your scripts at page generation time. You just can't dynamically reference the action stack 'live' from Javascript.

>> all the expressions are passed as a string, there's no evaluation of
>> the expression. Which, now you've explained that Javascript executes

I'm not sure what you mean here; the only thing you can 'pass' is a Javascript literal, but that could be a string, integer, even an object literal. Just remember that you're generating code, so whatever you generate has to be syntactically valid when the browser comes to run it.

If this is all still unclear, maybe you can describe what you are trying to achieve in a little more detail.

L.

Musachy Barroso wrote:
<script>
  // call the function passing the index
  myFunction(<s:property value="#indexValue" /> )

</script>

just make sure the "indexValue" is available when you use it.

musachy

On 4/30/07, Roger Varley <[EMAIL PROTECTED]> wrote:

> Without seeing the error and the JSP code that generated it, it's hard
> to tell you what's wrong. However, remember that Javascript runs on the
> client, after the page has been generated. View the page source to see
> what the syntax error is. In this case, it's probably the lack of quotes
> around the OGNL expression. It may also be that an in-line expression
> like that wont work.
>
> Here's a couple of suggestions to try:
>
>      ... onclick="enableField('%{#indexValue}')" ...
>      ... onclick="%{'enableField(\'' + #indexValue + '\')'}" ...
>      ... onclick="enableField('${indexValue}')" ...
>

I've tried all your suggested variations, but looking at the source,
all the expressions are passed as a string, there's no evaluation of
the expression. Which, now you've explained that Javascript executes
on the client makes sense. So the question becomes is it possible to
interact with the action stack in Javascript?

Regards
Roger

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to