'xforms.js' related query

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

'xforms.js' related query

Joseph Lawrence
Erik,
            I am using frames in my sample OPS application. Let main.xml be the file that loads two frames.
 
main.xml
<html>
    <head>
        <title>Main Page</title>
    </head>
 
    <frameset id="parentFrame" rows="25%,*" name="frameset">
            <frame id=" pageframe1" name="pageframe1" src="/test/page1"/>
            <frame id=" pageframe2" name="pageframe2"  src="/test/page2"/>
    </frameset>
 
</html>
 
            Let page1.xsl be the file that is loaded in the first frame and page2.xsl be that loaded into the second. Now my requirement is that, I need to load a page into the second frame based on the feedback obtained after a submission that is made on the page1.xsl (suppose, for example, page3.xsl need to be loaded into the second frame only if the submission in the page1.xsl yields a success flag)
            In OPS 3.0.1 accomplished this by editing the xforms.js as follows:
 
xforms.js
           case "load": {
                       var loadElement = actionElement.childNodes[actionIndex];
                       var resource = loadElement.getAttribute("resource");
                       var show = loadElement.getAttribute("show");
                       var target = loadElement.getAttribute("target");
                       if (show == "replace") {
                       //change made to load the resultant page to another frame within  the same frameset
                               if (target == null && parent.pageframe2!=null)
                                    {
                                     parent.pageframe2.location = resource;
                                     }
                                    else window.location.href = resource;
                               }
                               else {
                                        window.open(resource, "_blank");
                                       }
                                }
                                break;
                            }
           
In page1.xsl, I have the following code:
<xforms:submission ref=”instance(‘instance’)” id=”default-submission” method=”post” replace=”instance” instance=”response”/>
.
.
.
<xforms:group ref=”instance(‘response’)/flag”>
            <xforms:action ev:event=”xforms-value-changed”>
                        <xforms:load resource=”/page3”/>
            </xforms:action>
</xforms:group>
           
            The ‘flag’ tag within the ‘response’ instance will be present only if the submission response returns success. On that occasion, the xforms-value-changed event will occur and as a result the resource ‘/page3’ will be loaded in pageframe2.
            I’ll be grateful to you, if you could suggest me some measures to do the above said activities without editing the xforms.js file.
 
Thanks
Joseph Lawrence
Stabilix Solutions


All-new Yahoo! Mail - Fire up a more powerful email and get things done faster.

--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: 'xforms.js' related query

Erik Bruchez
Administrator
Joseph,

 > I am using frames in my sample OPS application.

The second opiniated remark of the day: frames are evil, don't use
them! But you probably have a good reason ;-)

This said, I think you can simply use this:

   <xforms:load resource="page3" xxforms:target="pageframe2"/>

-Erik

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws