Use double quotes for your javascript function parameters?  Either that or
try writing a javascript template via
http://tapestry.apache.org/tapestry4.1/usersguide/script.html.

Also, it's questionable whether or not you need to actually quote those
characters at all.   Apart from that it looks like you are trying to do
something like this:

"ognl:'StringValueInHere\'referenceToObject\'moreStringStuff'"

This is probably not going to work so well , but a much easier version that
does work would be:

"ognl:'StringValueInHere' + row.id + 'moreStringValueStuff'"

On 6/15/07, Marcos Chicote <[EMAIL PROTECTED]> wrote:

Hi!
I'm developing a page where I have a Form and a Table component (actually
Table component is not used, I use TableView, TableColumns, etc).
The idea is that when someone clicks on a TR of the table a JS function is
called and the form is filled with information about that row (so the user
can edit that row).

Here's the code I'm using:

    <component id="filasTabla" type="contrib:TableRows">
        <binding name="class" value="literal:textotabla"/>
        <binding name="element" value="literal:tr"/>
        <binding name="row" value="ognl:lpActual"/>
        <binding name="onclick" value="ognl:'javascript:fillForm(
                                                \' tableId \',
                                                \' 'lpActual.id' \',
<---------- Here's the problem!
                                                \' blablabla \',
                                                \' blablabla \',
                                                \' 1 \');'"/>
    </component>

However I keep getting a ognl.ParseException.
The problem is that I need to pass to the JS function parameters that I
get
from the element being rendered by the TableRows component. How do I get
this done?
I'm using Tap 4.1.
I also tried this:
    <component id="filasTabla" type="contrib:TableRows">
        <binding name="class" value="literal:textotabla"/>
        <binding name="element" value="literal:tr"/>
        <binding name="onclick" value="ognl:'javascript:fillForm(
                                                \' tableId \',
                                                \' 'row.id' \',
<----------
Here's the problem!
                                                \' blablabla \',
                                                \' blablabla \',
                                                \' 1 \');'"/>
    </component>


That didn't work either.

Thanks!
Marcos




--
Jesse Kuhnert
Tapestry/Dojo team member/developer

Open source based consulting work centered around
dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com

Reply via email to