Hi!
No the form is submitted (because a ValueChangeListener needs this)
With the following I display the same page again, but this time with the new
items in the second selectbox:
if (event.getComponent().getId()
> .equalsIgnoreCase("newpartnerMandanten")) {
> String viewId = "/newpartner.jsp";
> FacesContext context =
> FacesContext.getCurrentInstance();
> UIViewRoot view =
> context.getApplication().getViewHandler()
> .createView(context, viewId);
> view.setViewId(viewId);
> context.setViewRoot(view);
> context.renderResponse();
-----Ursprüngliche Nachricht-----
Von: Mike Duffy [mailto:[EMAIL PROTECTED]
Gesendet: Mittwoch, 14. Dezember 2005 19:34
An: MyFaces Discussion
Betreff: Re: AW: Dynamic Drop Down Lists
Thx Andreas.
When you make a change in the first select box, does the change automatically
propogate to second
selectbox without submitting the form (or does the change just affect the
component tree)?
Mike
--- [EMAIL PROTECTED] wrote:
> HI Mike!
>
> I have done it with a ValueChangeListener, it works fine.
> I get my Values for the BOX from the Database, because I have to update them
> very quickly. So
> I'm not sure, if you will do that yourself.
>
> Here is my code, perhaps it helps you:
>
>
> <!--FIRST SELECTBOX-->
> <h:selectOneMenu id="mandanten" styleClass="show"
> value="#{searchDto.mandant}"
> valueChangeListener="#{linker.listnewStandortsForSearch}"
> onchange="submit()" rendered="#{searchDto.showAlleAnzeigenMandant}" >
> <f:selectItem itemValue="#{searchDto.nullwert}" itemLabel="#{msg.alle}"
> />
> <f:selectItems value="#{queryHelper.mandanten}"/>
> </h:selectOneMenu>
>
> <!--SECOND SELECTBOX: DEPENDS ON FIRST SELECTBOX-->
> <h:selectOneMenu id="standorte" styleClass="show"
> value="#{searchDto.standort}"
> rendered="#{searchDto.showAlleAnzeigenStandort}">
> <f:selectItem itemValue="#{searchDto.nullwert}" itemLabel="#{msg.alle}"
> />
> <f:selectItems value="#{queryHelper.standorte}"/>
> </h:selectOneMenu>
>
> //HERE IS THE VALUECHANGEMETHOD:
>
> public void listnewStandortsForSearch(ValueChangeEvent event) {
>
> qh = (QueryHelper) FacesUtil.getManagedBean("queryHelper");
> searchDto = (SearchDto) FacesUtil.getManagedBean("searchDto");
> Long newvalue = null;
>
> // Überprüfung ob Wert der Mandanten Combobox einen anderen
> Wert als 0
> // (=Alle Anzeigen) liefert
> if (((Long) event.getNewValue()).compareTo(new Long(0)) != 0) {
> newvalue = (Long) event.getNewValue();
> searchDto.setMandant(newvalue);
>
> }
> else {
> searchDto.setMandant(new Long(0));
> }
>
> //CALL METHOD WHICH TAKES THE VALUES FOR THE 2nd BOX OUT OF THE
> DATABASE, DEPENDING ON THE
> SELECTION OF THE FIRST BOX.
> try {
> qh.liststandorts(newvalue);
> }
> catch (Exception e) {
> // TODO Auto-generated catch block
> e.printStackTrace();
> }
>
>
> //NOT SO INTERESSTING FOR YOU:
> if (event.getComponent().getId()
> .equalsIgnoreCase("newpartnerMandanten")) {
> String viewId = "/newpartner.jsp";
> FacesContext context =
> FacesContext.getCurrentInstance();
> UIViewRoot view =
> context.getApplication().getViewHandler()
> .createView(context, viewId);
> view.setViewId(viewId);
> context.setViewRoot(view);
> context.renderResponse();
> }
> else {
> String viewId = "/search.jsp";
> FacesContext context =
> FacesContext.getCurrentInstance();
> UIViewRoot view =
> context.getApplication().getViewHandler()
> .createView(context, viewId);
> view.setViewId(viewId);
> context.setViewRoot(view);
> context.renderResponse();
> }
>
> }
>
> -----Ursprüngliche Nachricht-----
> Von: Mike Duffy [mailto:[EMAIL PROTECTED]
> Gesendet: Mittwoch, 14. Dezember 2005 09:37
> An: [email protected]
> Betreff: Dynamic Drop Down Lists
>
>
> Is there any way to create dynamic drop down lists in JSF without using AJAX?
>
> Without JSF there are JavaScript techniques that can be used to dynamically
> change a drop down
> list (e.g., based on the selection of drop down list A, the values ion drop
> down list B are
> populated by an onclick function),
>
> However, with JSF, the changes made in JavaScript do not correspond to the
> values in the
> component
> tree on the server, so an error is thrown. I've tried to update the
> component through a
> "valueChangeListener", but this also generates an error.
>
> Has anyone found a way to do this in JSF? Can you send a link with an
> example? I Googled with
> no
> success.
>
> Thx.
>
> Mike
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
>
> ______________________________________________________________________
>
> This email and any files transmitted with it are confidential and
> intended solely for the use of the individual or entity to whom they
> are addressed. If you have received this email in error please notify
> your system manager.
>
> This footnote also confirms that this email message has been swept
> for the presence of computer viruses.
> ______________________________________________________________________
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
______________________________________________________________________
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
your system manager.
This footnote also confirms that this email message has been swept
for the presence of computer viruses.
______________________________________________________________________