I'm curious as to why javascript is frowned upon so much for solving this problem. I don't particularly like javascript that much, but in some cases, it presents a reasonable solution to this problem. While WebWork commands are definitely the way to go in a lot of cases, if you do have to worry about i18n or you have commands with multiple words in them, then I think javascript is an appropriate choice. Something like this:
<input type="submit" value="Add Item" onclick="javascript:doAddItem();"/> and your javascript function would be: function doAddItem() { document.someForm.action="<ww:url page="<name of command>"/>"; document.someForm.submit(); } I believe this is standard Javascript that will work across all browsers, though I am not 100% sure about that. Has anyone had an experience where this doesn't work? To me, the problem of multiple submit buttons in an HTML form is due to a problem with the view technology. If HTML submit buttons also had a "displayValue" attribute where you could define what is displayed on the button separate from the value of the button as a parameter, then you wouldn't have to worry about messing with javascript, and you could easily use WebWork commands to solve everything. But since the problem lies in the view, why not solve the problem in the view and not have to jump through all sorts of hoops to solve the problem elsewhere? Rob ---- On Tue, 11 Mar 2003, Steve Conover ([EMAIL PROTECTED]) wrote: > I was going to save this until I tried it out, but since there's some > discussion I'll go ahead and throw this out there. > > Taking this example > > <form action="dummy.action"> > <input type="text" name="foo"/> > > <input type="hidden" name="cancelCommandValue" value="redirect_to_index"/> > <input type="submit" name="cancelCommand" value="Some localized save > text"/> > > <input type="hidden" name="saveAction" value="save_foo"/> > <input type="submit" name="saveCommand" value="Some localized save text"/> > <!-- Notice this gets around the input type=submit value problem > using naming conventions and a hidden field --> > </form> > > Write an ActionFactoryProxy (called something like > "DispatcherActionFactoryProxy" - goes at the top of the factory stack) > that looks for a parameter named *Command. If it finds it, look for a > params named [commandname]Action. Use the value of that parameter as your > action name. > > Some might argue that the actions shouldn't be specified in the view. > Well for one, they already are (i.e. in every form tag), plus I have yet > to convince myself that another level of indirection is necessary (i.e. in > place of putting the actual actionname in the hidden field, you put > something like "save" or "cancel" and have a mapping layer on the server > side that determines what actual action to use). IMHO the separation > between M and VC is the main thing. > > I'm trying to avoid polluting my commands with a bunch of controller > logic, or alternatively creating a ton of extra controller classes to do > branching logic - maybe this is a viable solution. > > Anyway that's my current thinking. Thanks for all the replies. > > Regards, > -Steve > > > Hi all, > > > > I brought this issue up a long time ago. My work > > around is to name the submit button as > > command{commandName}. Webwork would extract the > > commandName out from the name, and invoke appropriate > > doXXX method. > > > > --- Rickard_Öberg <[EMAIL PROTECTED]> a écrit : > > > Jason Carreira wrote: > >> > Set the button names to all be "command" and set > >> the value to the name > >> > of a command in your CommandDriven Action and have > >> methods named > >> > doSave,doCancel, etc. > >> > >> This does not work well with an i18n'ized app, and > >> also doesn't work if > >> the button name has several words. > >> > >> It's a very tough issue, and I don't have any better > >> answer though... > >> > >> /Rickard > >> > >> > >> > >> > > ------------------------------------------------------- > >> This sf.net email is sponsored by:ThinkGeek > >> Welcome to geek heaven. > >> http://thinkgeek.com/sf > >> _______________________________________________ > >> Opensymphony-webwork mailing list > >> [EMAIL PROTECTED] > >> > > https://lists.sourceforge.net/lists/listinfo/opensymphony- webwork > > > > ===== > > ------------------- > > Hai Pham Quang > > ------------------- > > > > __________________________________________________________ > > Lèche-vitrine ou lèche-écran ? > > magasinage.yahoo.ca > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by:Crypto Challenge is now open! > > Get cracking and register here for some mind boggling fun and > > the chance of winning an Apple iPod: > > http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en > > _______________________________________________ > > Opensymphony-webwork mailing list > > [EMAIL PROTECTED] > > https://lists.sourceforge.net/lists/listinfo/opensymphony- webwork > > > > > > ------------------------------------------------------- > This SF.net email is sponsored by:Crypto Challenge is now open! > Get cracking and register here for some mind boggling fun and > the chance of winning an Apple iPod: > http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en > _______________________________________________ > Opensymphony-webwork mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/opensymphony- webwork > > ------------------------------------------------------- This SF.net email is sponsored by:Crypto Challenge is now open! Get cracking and register here for some mind boggling fun and the chance of winning an Apple iPod: http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en _______________________________________________ Opensymphony-webwork mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork