Preencher um combo JSON?

2 respostas
juniorsatanas

Pessoal estou tentando fazer o seguinte, Ao ser digitado em um campo impultex o CPF ao lado um combo será preenchido com o NOME do cliente :

<!-- jQuery -->
		<script type="text/javascript" src="<c:url value='/js/jquery-1.4.js'/>"></script>

		<script type="text/javascript">
			function consultar() {
				var idBusca = $('#idBusca').val();
		
				$.getJSON('<c:url value="/usuario/editar/"/>' + idBusca, function (json) {
					$('#id').val(json.usuario.id);
					$('#nome').val(json.usuario.nome);
					$('#email').val(json.usuario.email);
					$('#senha').val(json.usuario.senha);

					$('#telefone').val(json.usuario.contato.telefone);
					$('#celular').val(json.usuario.contato.celular);
				});
			}
		</script>

o form fica assim :

</head>
	<body>
		<form>
			ID: &lt;input id="id" type="text"/&gt;<br/>
			Nome: &lt;input id="nome" type="text"/&gt;<br/>
			Senha: &lt;input id="senha" type="text"/&gt;<br/>
			E-mail: &lt;input id="email" type="text"/&gt;<br/><br/>
			
			Telefone: &lt;input id="telefone" type="text"/&gt;<br/>
			
			
                        &lt;tr&gt;
		      &lt;td height="30" align="right" class="tabelaFonte"&gt;Celular&lt;/td&gt;
                      &lt;td height="30"&gt;
                        &lt;select id="celular" name="celular"&gt;
                          &lt;option selected="selected"&gt;Selecione o Cel&lt;/option&gt;
                        &lt;c:forEach var="celular" items="${celular}"&gt;
                            &lt;option value="${celular}"&gt;&lt;/option&gt;
                          &lt;/c:forEach&gt;
                        &lt;/select&gt;<br />

		      &lt;/tr&gt;

			&lt;input type="button" value="Salvar"/&gt;
		&lt;/form&gt;<br/>
		
		&lt;form&gt;
			Buscar ID: &lt;input id="idBusca" type="text"/&gt;
                        &lt;input type="button" value="Buscar"  onkeydown="consultar();"  onclick="consultar();"/&gt;
		&lt;/form&gt;
	&lt;/body&gt;

Controller :

@Resource
public class UsuarioController {
	private UsuarioDao usuarioDao;
	private Result result;

	public UsuarioController(Result result, UsuarioDao usuarioDao) {
		this.result = result;
		this.usuarioDao = usuarioDao;
	}
	@Get
	@Path("/usuario")
	public void novo() {
	}
	@Get
	@Path("/usuario/editar/{usuario.id}")
	public void editar(Usuario usuario) {
		Usuario user = usuarioDao.loadById(usuario.getId());
		result.use(json()).from(user).include("contato").serialize();
	}
}

Não funciona, ele carrega os dados se forem para um inpultex, mas para um combo não traz !

2 Respostas

L

Voce pode usar o Mustache.js

http://mustache.github.com

juniorsatanas

tem um exemplo ai com VRAptor !

Criado 18 de maio de 2011
Ultima resposta 18 de mai. de 2011
Respostas 2
Participantes 2