[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Dúvida <mtw:list>  XML
Forum Index -> Comentários Gerais
Author Message
pauloperes


[Avatar]

Joined: 07/11/2005 13:56:45
Messages: 41
Offline

Ola a todos,

Vejam o meu problema, tenho uma pagina que contém um select de paises, e que de acordo com o pais selecionado chamo uma pesquisa que retorna uma lista de estados do pais escollhido, faço isto através da tag <mtw:list>, posteriormente no select dos estados faço uma pesquisa de cidades por estado, porém acontece o seguinte, o select dos estados desaparece. Para esclarecer mais, a lista de cidades só sera preenchida quando o pais escolhido for o brasil, caso contrário, é configurado para o usuario digitar. Outro detalhe é que quando eu escolho um pais que não seja o Brasi, Estados Unidos ou a Espanha, minha linha Estado tem que sumir da página, vejam trechos do meu código:

Página HTML

Funções javascript
Code:
 function carregaEstado(){
 	document.cadastra_usuario.action="pesquisa_estado.pcam";
 	document.cadastra_usuario.submit();
 }
 
 function carregaCidade(){
 	document.cadastra_usuario.action="pesquisa_cidade.pcam";
 	document.cadastra_usuario.submit();
 }
 


Código com a tag
Code:
         <mtw:select name="paises" id="paises" list="listPais" klass="campos" emptyField="true" onchange="carregaEstado();"/>
         </div></td>
       </tr>            
 	  	<mtw:list value="estados">
 			<mtw:isEmpty negate="true">
 				<tr>
 				<td>
 					<div align="right" class="style2">
 						<span class="style2">
 							<span class="style5">*</span>
 						</span>
 						<span class="style3"><mtw:i18n key="estado"/></span>
 					</div>			
 				</td>
 				<td>
 					<div align="left">
 						<select name="uf" class="campos" id="uf" onChange="carregaCidade();">
 							<option value="0">--</option>
 						<mtw:loop>
 							<option value="<mtw:out value="codigo"/>"><mtw:out value="nome"/></option>
 						</mtw:loop>
 						</select>
 					</div>					
 				</td>
 				</tr>
 				</mtw:isEmpty>			
 		</mtw:list>
 		<mtw:list value="cidades">
 			<mtw:isEmpty negate="true">
 				<tr>
 					<td>
 						<div align="right" class="style2">
 							<span class="style2">
 								<span class="style5">*</span>
 							</span>
 							<span class="style3"><mtw:i18n key="cidade"/></span>
 						</div>
 					</td>
 					<td>
 						<div align="left">
 							<select name="cidade" class="campos" id="cidade">
 								<option value="0">--</option>
 							<mtw:loop>
 								<option value="<mtw:out value="codigo"/>"><mtw:out value="nome"/></option>								
 							</mtw:loop>
 							</select>
 						</div>
 					</td>
 				</tr>
 			</mtw:isEmpty>
 			<mtw:isEmpty>
 				<tr>
 					<td>
 						<div align="right" class="style2">
 							<span class="style2">
 								<span class="style5">*</span>
 							</span>
 							<span class="style3"><mtw:i18n key="cidade"/></span>
 						</div>
 					</td>
 					<td>
 						<input name="fieldCidade" class="campos" size="30">
 					</td>
 				</tr>
 			</mtw:isEmpty>
 		</mtw:list>	
 


Classes que colocam os objetos no contexto

PesquisaEstado
Code:
 package net.powercam.actions;
 
 import java.util.List;
 
 import net.powercam.bean.Estado;
 import net.powercam.dao.EstadoDAO;
 
 import org.mentawai.core.BaseAction;
 
 public class PesquisaEstado extends BaseAction {
 	
 	public String execute(){		
 		int codPais = input.getIntValue("paises");
 		
 		List<Estado> listEstados = new EstadoDAO().getEstados(codPais);
 		
 		output.setValue("estados", listEstados);
 		return SUCCESS;
 	}
 
 }
 


PesquisaCidade
Code:
 /**
  * 
  */
 package net.powercam.actions;
 
 import java.util.List;
 
 import net.powercam.bean.Cidade;
 import net.powercam.dao.CidadeDAO;
 
 import org.mentawai.core.BaseAction;
 
 /**
  * @author Atendentes
  *
  */
 public class PesquisaCidade extends BaseAction {
 	
 	public String execute(){
 		int codEstado = input.getIntValue("uf");
 		
 		List<Cidade> listCidades = new CidadeDAO().getCidades(codEstado);
 		
 		output.setValue("cidades", listCidades);
 		
 		return SUCCESS;
 	}
 
 }
 


Bom, é possível colocar duas listas no contexto?

Outra coisa, quando seleciono quanquer um dos select que chamam uma action e a página é recarregada, meus dados que eu havia digitado somem, o que eu faço para solucionar isto?

Valeu,

Paulo
[Email] [MSN]
 
Forum Index -> Comentários Gerais
Go to:   
Powered by JForum 2.1.6 © JForum Team