- From: Iņaki Salinas Bueno <inksalinas@gmail.com>
- Date: Wed, 17 Jan 2007 20:31:23 +0100
- To: "Dustin Whitney" <dustin.whitney@gmail.com>
- Cc: www-forms <www-forms@w3.org>
- Message-ID: <cd3c31800701171131h26f63053y239ba3d131a33d76@mail.gmail.com>
Thanks Dustin!!
Finally it works! I had nonsense problems with the namespaces, but I have
seen that it is not necessary to introduce them in the Javascript
getElementsByTagName
function.
Greetings
Iņaki
2007/1/16, Dustin Whitney <dustin.whitney@gmail.com>:
>
> Heh, I was working on the same thing yesterday. Here is a simple version
> of what I accomplished, and probably what you are looking for.
>
> <html
> xmlns="http://www.w3.org/1999/xhtml"
> xmlns:xforms=" http://www.w3.org/2002/xforms"
> xmlns:event="http://www.w3.org/2001/xml-events">
> <head>
> <script language="javascript">
> <![CDATA[
> function changeMe(){
> var model = document.getElementById("myModel");
> var instance = model.getInstanceDocument("myInstance");
> var textElements = instance.getElementsByTagName("text");
> textElements[0].firstChild.nodeValue = 'Changed!';
> model.rebuild();
> model.refresh();
> }
> ]]>
> </script>
> <xforms:model id="myModel">
> <xforms:instance id="myInstance">
> <text xmlns="">Change Me!</text>
> </xforms:instance>
> <xforms:instance id="script">
> <script url="javascript:changeMe()"/>
> </xforms:instance>
> </xforms:model>
> </head>
> <body>
> <xforms:input ref="/text"/>
> <xforms:trigger>
> <xforms:label>Change!</xforms:label>
> <xforms:load resource="javascript:changeMe()"
> event:event="DOMActivate"/>
> </xforms:trigger>
> </body>
> </html>
>
> -Dustin
>
>
> On 1/16/07, Iņaki Salinas Bueno < inksalinas@gmail.com> wrote:
>
> > Hello,
> >
> > I'm trying to set the value of an xforms control using JavaScript: I
> > must use a JavaScript function, and set the result in the form.
> >
> > I call the Javascript function following a tip<http://www-128.ibm.com/developerworks/xml/library/x-xformstipcalljs/index.html>of Nicholase Chase from IBM (using 'load'), and it works.
> >
> > I want to use this function:
> >
> > document.getElementById('docPKCS7').value = crypto.signText (
> > document.getElementById('formulari').innerHTML, "auto");
> >
> > 'docPKCS7' must point to xforms control. The right part of the equality
> > works, but the allocation of the value obtained to the object pointed by
> > 'docPKCS7' not.
> >
> > This is the code of the xforms control:
> > <xforms:textarea bind="docPKCS7">
> >
> > I tried this too:
> > <xforms:textarea
> > ref="instance('auxiliars')/aux:ajudes/aux:solicitutPKCS7" id="docPKCS7">
> >
> > And, following some advices from this post
> > <http://www.mail-archive.com/orbeon-user%2540lists.sourceforge.net/msg01020.html>,
> > I introduce the xhtml:id attribute:
> > <xforms:textarea
> > ref="instance('auxiliars')/aux:ajudes/aux:solicitutPKCS7"
> > xhtml:id="docPKCS7">
> >
> > But nothing works. The javascript console don't show any problem or
> > warning, except using xhtml:id that appears the following:
> > Error: document.getElementById("docPKCS7") has no properties
> >
> > However, the problem is the allocation of the value in the xforms
> > control because using a HTML textarea it works (the value returned by the
> > function appears in the textarea):
> > <textarea id="docPKCS7" rows="5" cols="50"/>
> >
> > Maybe my problem is related to a namespace conflict (like this<http://mail-archive.objectweb.org/ops-users/2006-04/msg00267.html>),
> > but in that case I don't know how to attack it.
> >
> > Where is the problem? What other things I can test?
> > Lot of thanks
> >
> > Iņaki
> >
> >
> >
> >
> >
> >
> >
>
Received on Wednesday, 17 January 2007 19:31:34 UTC