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]