Combo dinâmica com Spring

0 respostas
cris.t

Olá Pessoal, preciso fazer com que uma combo seja preenchida dinamicamente: tenho duas combos uma de estados e outra de cidades, eu quero que quando eu clique em um estado a combo de cidades seja preenchhida apenas com as cidades pertencentes àquele estado, alguém tem idéia de como eu posso fazer isso utilizando o Spring?

<label for="state"> 
				&lt;fmt:message key="client.label.state"/&gt; <br />
		        
		        &lt;form:select path="city.state" id="state" onchange=""&gt;
		        	&lt;form:option value="-" label="--Please Select--"/&gt;
		        	&lt;form:options items="${states}" itemValue="id" itemLabel="symbol"/&gt;
		        &lt;/form:select&gt;
	            &lt;form:errors path="city.state" cssClass="error"/&gt;
			&lt;/label&gt;

			<br />
			<br />
									
			&lt;label for="city"&gt; 
				&lt;fmt:message key="client.label.city"/&gt; <br />
				
				&lt;spring:bind path="city"&gt;
			        &lt;form:select path="city" id="city"&gt;
			        	&lt;form:option value="-" label="--Please Select--"/&gt;
			        	&lt;form:options items="${cities}" itemValue="id" itemLabel="name"/&gt;
			        &lt;/form:select&gt;
		        &lt;/spring:bind&gt;
	            &lt;form:errors path="city" cssClass="error"/&gt;
	            
			&lt;/label&gt;

Estou usando SimpleFormController

public class ClientFormController extends SimpleFormController{

	private ClientDAO _clientDAO;
	private CityDAO _cityDAO;
	private StateDAO _stateDAO;
	
	@Override
	protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command, BindException errors)
			throws Exception {
		
		Client client = (Client) command;
		
		_clientDAO.insert(client);
		
	    logger.info(getSuccessView());

        return new ModelAndView(getSuccessView());
	}
	
	@Override
	protected Object formBackingObject(HttpServletRequest request) throws Exception {
		Client client = new Client();
		client.setCity(new City());
		return client;
	}

	@Override
	protected Map referenceData(HttpServletRequest request, Object command, Errors errors) throws Exception {
			
		Map&lt;String, Object&gt; map = new HashMap&lt;String, Object&gt;();
		map.put("states", _stateDAO.findAll());
		
		return map;
	}
Criado 14 de julho de 2009
Respostas 0
Participantes 1