The "targets" won't be updated if they are in another frame, you can do something like this:
<s:submit theme="ajax" notifyTopics="/updateIframe" /> <script> dojo.event.topics.subscribe("/updateIframe", function(data, type, e) { if(type == "load") { //use iframe index or name here window.iframe[0].document.getElementById("divId").innerHTML = data; } }); </script> musachy On 4/24/07, Harring Figueiredo <[EMAIL PROTECTED]> wrote:
Hmmmm... I sm not sure I understood. Maybe the generated code is different for: <form target="someT" ..? then for : <s:submit targets="someT" /> ??? If the target is used on the form, it does reference and update the right form (But I have to IFrames that I need to update and that is the reason I am using the <s:submit :->. Harring. On 4/24/07, Musachy Barroso <[EMAIL PROTECTED]> wrote: > > I think that's why it doesn't work, the ajax theme uses > getElementBydId(id) > (actually dojo.byId(), anyway) which returns the element in the current > document, for an iframe it should be > window.frames[0].document.getElementById(...). > You can use the notifyTopics attribute and do it yourself inside the > topic. > > regards > musachy > > On 4/24/07, Harring Figueiredo <[EMAIL PROTECTED]> wrote: > > > > This is the generated code: > > > > <td colspan="2"><div align="right"> <input type="submit" > > dojoType="struts:Bind" event="onclick" value="Save" > > id="member_login_button_save" label="Save" name=" > button.save" > > targets="RightPaneWindow" /> > > > > </div> > > > > > > The div is on a different IFrame. > > > > Harring > > > > On 4/24/07, Harring Figueiredo <[EMAIL PROTECTED]> wrote: > > > > > > > > > Musachy, > > > > > > Thanks for the reply. > > > > > > I am using only one div with the id. > > > > > > I now tried something else while waiting for the reply: > > > > > > <s:set name"frame" value="LoginWindow"/> > > > <s:if test="hasActionErrors"> > > > <s:set name"frame" value="RightPaneWindow"/> > > > </s:if> > > > > > > I then tried to replace the "traget" on the form itself (since it > works > > on > > > the form) with: > > > <s:form action="member_login.action" theme="ajax" target="#frame" > > > validate="true"> > > > and also tried with > > > <s:form action="member_login.action" theme="ajax" target="<s:param > > > name='value' value='#frame' " validate="true"> > > > > > > Howver I cannot get the rigyht syntax to substitue the correct string. > > > > > > I think that it would work both ways.. But I would prefer to get the > > > ajax/targets working. > > > > > > Harring > > > > > > On 4/24/07, Musachy Barroso <[EMAIL PROTECTED]> wrote: > > > > > > > > After the ajax request completes, for each target in the target list > > > > this > > > > will run: > > > > > > > > dojo.byId("id").innerHTML = text; > > > > > > > > try updating the div content like that, and see what happens. This > is > > a > > > > dumb > > > > question, but are you using the same id for more than one div? > > > > > > > > musachy > > > > > > > > On 4/24/07, Harring Figueiredo <[EMAIL PROTECTED]> wrote: > > > > > > > > > > Folks, > > > > > > > > > > I have a form with a submit button as follows > > > > > > > > > > <s:form action="member_login.action" theme="ajax" validate="true"> > > > > > <s:textfield key="username" /> > > > > > <s:password key="password" showPassword="false"/> > > > > > <s:submit key="button.save" theme="ajax" > > targets="RightPaneWindow" > > > > /> > > > > > <s:reset key=" button.reset"/> > > > > > </s:form> > > > > > > > > > > On the page itself, I have an IFrame with the > div="RightPaneWindow"; > > > > > however, the updated div is the div in which the form is in. > > > > > > > > > > Any idea? > > > > > > > > > > Thank you in advance, > > > > > > > > > > Harring Figueiredo > > > > > > > > > > > > > > > > > > > > > -- > > > > "Hey you! Would you help me to carry the stone?" Pink Floyd > > > > > > > > > > > > > > > > > > > -- > "Hey you! Would you help me to carry the stone?" Pink Floyd > -- Sincerely, Harring Figueiredo Sr. Software Engineer Email: [EMAIL PROTECTED] Telephone: 941-256-0600 "We never become truly spiritual by sitting down and wishing to become so. You must undertake something so great that you cannot accomplish it unaided."
-- "Hey you! Would you help me to carry the stone?" Pink Floyd