Struts action call in a JS method returns blank page 2007-02-08 - By Yee Kai Lai
Back
It returns a blank page might be due to
form.submit(); in your JS.
I think if you have a form named 'service.device.selected-devices-form' then it will never be null hence it will always submit.
May you could enlightened why u need a form.submit() ?
>From: "Christopher Loschen" <CLoschen@(protected)> >Reply-To: "Struts Users Mailing List" <user@(protected)> >To: <user@(protected)> >Subject: Struts action call in a JS method returns blank page >Date: Wed, 7 Feb 2007 14:14:35 -0500 > >Hi all, > > > >I'm honestly unsure if I'm having a problem with Struts (sadly, 1.1) or >with Javascript, or something else. But my best guess is it's a Struts >issue, and anyway, there are a lot of very knowledgeable people on both >of those technologies here, so I hope someone can help. Bottom line: I'm >getting the popup with the correct values, but my main page under the >popup becomes blank. > > > >I'm adding some functionality to an existing application. The >functionality I'm adding takes the values from some checkboxes on page >A, gets the corresponding devices from the checkbox values, and saves >the resulting List into the request. Later down the stream, other code >gets those values again and uses them as a list of devices on which to >perform an action. Pretty straightforward. > > > >All of the actual navigation is happening via Javascript calls, starting >with a link on page A, but outside the form where my checkboxes are >declared. That link fires a Javascript function which pops up a small >window with a list of actions which have been defined. If the user then >clicks on one of those actions, another Javascript function fires which >pops up another window to confirm that the user wants to perform the >selected action on the selected devices. > > > >I have inserted my added functionality into that second script. >Basically I need to submit the appropriate form on the page. I've >defined it with the correct action and I've got a mapping in my >struts-config.xml file: > > > > <form-bean > > name="service.device.selected-devices-form" > > type="com.xxx.webapp.common.CheckboxForm"/> > >... > > <action path="/service/device/actions/store-selected-devices" > > >type="com.xxx.webapp.service.list.StoreSelectedDevicesAction" > > name="service.device.selected-devices-form" /> > > > >The mapping doesn't have any action forwards defined because it doesn't >actually need to go anywhere (though that might be part of my problem). >The JS function looks like this: > > > >function popActionConfirm(url) { > > > > var form = document.forms['service.device.selected-devices-form']; > > if (form!=null) form.submit(); > > > > var winl = (screen.width - 500) / 2; > > > > var wint = (screen.height - 350) / 2; > > > > winprops = >'height=250,width=375,top='+wint+',left='+winl+',scrollbars=0,resizable= >0'; > > > > var child = window.open(url,"action_confirm", winprops); > > > > self.name="main_window"; > > > >} > > > >I added the first two lines of the JS method - it worked correctly >before I put those in (though of course it didn't have my added >functionality in place). The popup window does appear, and it has the >correct values in it (that is, the devices which were selected). But the >main window goes blank where before it remained unchanged. When I've >seen blank pages like this before, it meant there was a bad action >forward in the struts-config file, but I don't want the main page to >change at all, so what I really want is for the main page to just stay >in place as it was before the form was submitted. > > > >How do I go about doing that? Thanks! > > > >Chris Loschen > > > > >
__ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ __ Receive MSN Hotmail alerts over SMS! http://en-asiasms.mobile.msn.com/ac.aspx?cid=1002
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------ To unsubscribe, e-mail: user-unsubscribe@(protected) For additional commands, e-mail: user-help@(protected)
|
|