Retornando Dados do Formulário em JSP - Urgente!

5 respostas
R

Colegas !!

Seguinte:

Estou fazendo um programa em JSP de cadastro (inclusão / alteração / exclusão).

No cadastro de inclusão, tenho no formulário alguns campos e também 3 menus (combo, já pre-definido alguns dados).

Quando quero alterar os dados já inseridos - pela tela de alteração - o formulário me retorna os dados o qual quero alterar, porém em cada menu ele está retornando os valores default e não o que eu inseri…

Segue abaixo um pequeno trecho do código.

<select name="combo_filial" id="combo_filial" value="<% out.print( res.getString( "filial" ) ); %>">
            <option>MATRIZ</option>
            <option>CAMPINAS</option>
            <option>SAO JOSE DOS CAMPOS</option>
            <option>JUNDIAI</option>
            <option>PIRACICABA</option>
            <option>SOROCABA</option>
            <option>SAO PAULO</option>
            <option>RIBEIRAO PRETO</option>
          </select>

Alguem pode me ajudar !!!
Att,
Rafael

5 Respostas

Pedrosa

o value deve ser dentro de option e basta vc fzer um if comparando os valores submetidos se é igual a opção, caso seja coloque um selected

<option value="teste" <c:if test="${usuarios.desc == 'teste'}">selected</c:if>>teste</option>

Mas aqui eu usei jstl

R

Não entendi muito bem sua resposta !!

Eu gostaria de retornar no formulário de alteração os dados que eu inseri e, não os dados default do combo/menu.

Flw
Rafael

Pedrosa

Pelo que eu entendi vc tem uma tela de alteração, que pega os valores inseridos no bd e vc quer que eles venham selecionados de acordo com o que foi gravado, é isso?

R

Exatamente isso !!

Nos campos estão corretos…porém no combo onde tenho pre-definidos alguns valores, onde o usuário nao precisa ficar digitando, está vindo como o primeiro da lista - default. Ai na hora de salvar…o formulario salva errado, ou seja, o valor default e não o valor que eu tinha inserido.

Rafael

Pedrosa

Pelo o que eu vi vc está usando scriplet ou seja <%%>, atualmente é melhor usar jstl, que nada mais que uma taglib para deixar o jsp mais limpo e dinâmico, para usa-lo é necessário incluir o jstl.jar no classpath da sua aplicação e colocar as seguintes linhas no jsp:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@page isELIgnored="false"%>

Agora já é possível chamar esses comandos da taglib com <c:if> etç, a melhor maneira da fazer essa verificação é por exemplo passar os valores do banco via request:

request.setAttribute("combo","opcao1");

No jsp eu verifico com <c:if test="$combo == ‘opcao1’> eu coloco selected que deixa a combo selecionada, no seu exemplo não tem a opção value dentro de option na combo e é por ele que vericamos se igual ou não.

Criado 3 de julho de 2006
Ultima resposta 3 de jul. de 2006
Respostas 5
Participantes 2