sl_getGroups is being called. i printed out alerts when i was writing it. and i have Sys.outs in the action. besides, my JSP wouldn't show up if it wasn't :)
the javascript is fairly simple: (i know there is a more Strutsy way to do this, i'm getting there...) function sl_getGroups(frm) { if (frm.selectedShoppingList.options[frm.selectedShoppingList.selectedIndex].value != "-1") { frm.selectedShoppingList.options[frm.selectedShoppingList.selectedIndex].value = "-1"; frm.action += "?step=getGroups"; frm.submit(); } } the javascript just checks to see that the selectedShoppingList is not "-1", the initial value. it then appends my step parameter to the action. this is working. what is funny is that the javascript recognizes that the selectedShoppingList is not "-1", but the form doesn't pick that up... any suggestions? andy On Thu, 15 Jul 2004 14:36:14 -0400, Bill Siggelkow <[EMAIL PROTECTED]> wrote: > Hmmm ... looks pretty darn hairy. You didn't show the JavaScript thats > called by the onchange -- I would verify first that "getGroups" is > being called. > > > > Andrew Close wrote: > > > alrighty, i've got this half figured out. i can populate my > > dropdowns, but my form doesn't seem to be scrapping the values back > > off the page. > > i have an action that gets a collection of beans and puts them in > > session for the JSP to use. the JSP renders and displays those > > objects correctly in the dropdowns. when the first dropdown is > > changed an onchange event fires off the previous action to populate > > the second dropdown. however, the selected value in the first > > dropdown doesn't show up in my Action or the Form. > > > > here's part of the JSP: > > > > <td align="left"> > > <html:select name="shoppingListForm" property="selectedShoppingList" > > onchange="sl_getGroups(this.form);" > > > <html:option value="-1" >- Please Select A List -</html:option> > > <html:optionsCollection name="lists" /> > > </html:select> > > <br> > > <html:select name="shoppingListForm" > > property="selectedShoppingListGroup" > > onchange="sl_getItems(this.form);" > > > <logic:match name="selectedShoppingList" value="-1"> > > <html:option value="-1" >- Please Select A List -</html:option> > > </logic:match> > > <logic:notMatch name="selectedShoppingList" value="-1"> > > <html:option value="-1" >- Please Select A Group -</html:option> > > <html:option value="0" >- All Groups -</html:option> > > <html:optionsCollection name="groups" /> > > </logic:notMatch> > > </html:select> > > </td> > > > > and i have an ActionForm created named shoppingListForm containing two > > Strings: selectedShoppingList and selectedShoppingListGroup with > > initial values set at "-1". ShoppingListForm contains basic getters > > and setters for these attributes. > > > > so i'm guessing my problem lies within my Action. i'm extending > > DispatchAction and the getGroups method forwards to the above JSP on > > "success". > > > > public ActionForward getGroups ( > > > > <snip> > > > > try { > > HttpSession session = request.getSession(false); > > ShoppingListForm slForm = (ShoppingListForm)form; > > > > if (slForm == null) { > > session.setAttribute("selectedShoppingList", "-1"); > > session.setAttribute("selectedShoppingListGroup", "-1"); > > } else { > > session.setAttribute("selectedShoppingList", > > slForm.getSelectedShoppingList()); > > session.setAttribute("selectedShoppingListGroup", > > slForm.getSelectedShoppingListGroup()); > > > > System.out.println("\n\nShopping List Form..."); > > System.out.println("Shopping List: " + > > slForm.getSelectedShoppingList()); > > System.out.println("Shopping List Group: " + > > slForm.getSelectedShoppingListGroup() + "\n\n\n"); > > } > > > > ... go on to populate collection for lists, etc... > > > > the first time through the form will be null because this action is > > called from another page. the action populates 'lists' and forwards > > to the above JSP. onchange in the JSP calls this same action and > > should pass it my ShoppingListForm, in which should be found the value > > to selectedShoppingList. however this value remains "-1". > > on success the same JSP is displayed... > > > > here is the action-mapping for this particular action: > > > > <action path="/refresh" > > parameter="step" > > type="sl.controllers.SLMainAction" > > name="shoppingListForm" > > validate="true"> > > <forward name="success" path="/jsp/SLMain.jsp" /> > > <forward name="failure" path="/jsp/SLError.jsp" /> > > </action> > > > > thanks for any help > > andy --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]