Inserir quantos campos quiser - Front-end - GUJ
Inserir quantos campos quiser
Felipe_MPPJ Novembro 13, 2006, 10:32am #1
Tenho uma intranet em minha empresa funcionando corretamente, mas agora preciso realizar algumas alterações. Em uma certa parte do cadastramento do inventário tem o campo para cadastrar o IP da máquina, mas por algumas atividades da empresa algumas máquinas utilizam mais de um IP, e isso deverá constar também no inventário.
Minha ideia foi de colocar uma opção do tipo:
Além de ter um IP uma opção ao lado, adicionar IP. assim iria agromerando, poderia colocar a quantidade de IPs que fosse necessário.
Alguém já fez algo assim? Como faço?
fabiozoroastroPJ Novembro 13, 2006, 11:11am #2
Você vai precisar criar uma tabela somente pra armazenar os ips então.
> IP_PESSOA
+Pessoa(FK)
+IP_COD(PK)
+IP(String)
Felipe_MPPJ Novembro 13, 2006, 1:09pm #3
é a ideia de uma nova tabela é realmente boa, e acho até que será a única opção.
no caso eu quero independente da máquina ter mais de um IP ou não,
Maquina "A" tem 2 IPs
Maquina "B" tem 1 IP
Maquina "C" tem 4 IPs
como faço pra que os IPs estejam ligados sua máquina, chaves no caso né??
mas a minha maior dúvida é colocar isso pra JSP, eu uso um banco Postegresql, alguém já fez algo parecido? tem como me mandar um exemplo.
Felipe_MPPJ Novembro 29, 2006, 10:19am #4
galera, estou querendo adicionar quantos IP´s quiser no meu inventário…
pô meu iventário é em jsp e só tem um campo pra colocar somente um IP. quero ter um botão do tipo, adicionar mais um IP, e assim eu vou adicionando quantos quiser. e ao clicar nesse botão ir adicionando os IP´s.
Alguém já fez algo do tipo? tem alguma sugestão??
lounaticoPJ Novembro 29, 2006, 11:04am #5
cara… acho que o que vai ter que fazer é recarregar a página passando algum parâmetro pra saber quantos <input> vai ter que criar…
ou ajax, essas coisas manja?
mas de alguma maneira vai fazer isso…
tipo… eu costumo fazer assim…
o nome do campo é por exemplo "ip_1", o próximo "ip_2" sendo que esse numero ae é a volta do for…
ae você passa pra página que grava junto com esses campos (só dar um submit) quantas voltas você deu no for…
ae do outro lado, é só fazer um loop e ir gravando dentro do loop… pegando request.getParameter("ip_" + variavel_loop );
sei lá… é uma idéia…
Guilherme_MelloPJ Novembro 29, 2006, 11:12am #6
[quote="Felipe_MP"]galera, estou querendo adicionar quantos IP´s quiser no meu inventário…
Alguém já fez algo do tipo? tem alguma sugestão??[/quote]
Você pode fazer isso com um pouco de Ajax. O JSP só terá um campo IP e botão ao lado para o usuário adicionar mais IPs, caso seja necessário.
Com Ajax você pode ir carregando vários inputs no form. Tem vários exemplos por aí…
Felipe_MPPJ Novembro 29, 2006, 12:55pm #7
vlw lounatico, tua ideia é boa, mas não manjo muito de Ajax, sobre o for vou dar uma olhada, mas acho q não é isso que quero.
Guilherme, como já disse não sei nada de Ajax. essa ideia do botão pra adicionar vários ip´s como seria???
Guilherme_MelloPJ Novembro 29, 2006, 3:30pm #8
function displayInputs&#40;&#41; &#123; // adiciona um input utilizando o InnerHTML &#125;
&lt;input type=&quot;text&quot; name=&quot;ip&quot;/&gt; &lt;a href=&quot;#&quot; onClick=&quot;displayInputs&#40;&#41;&quot;&gt;Adicionar mais um IP&lt;/a&gt;
Felipe_MPPJ Novembro 30, 2006, 2:51pm #9
[quote]Código:
function displayInputs() {
// adiciona um input utilizando o InnerHTML
<input type="text" name="ip"/> <a href="#" onClick="displayInputs()">Adicionar mais um IP</a> [/quote]
cara entendi bem usa lógica, mas como vou fazer pra guardar isso no banco?? (uso o postgre)
outra pergunta, esse input em InnerHTML é um input text normal???
Felipe_MPPJ Novembro 30, 2006, 3:12pm #10
a cada vez que eu clicar no link vai gravar no banco em uma tabela??
lounaticoPJ Novembro 30, 2006, 4:00pm #11
Isso eu acho que tem como fazer com Ajax…
mas uma outra alternativa seria gravar tudo de uma vez, depois… né?
aí você pode fazer aquilo que eu te falei… padronizar um nome, e manda prum outro jsp que num loop faz os inserts!
Guilherme_MelloPJ Novembro 30, 2006, 4:25pm #12
Felipe_MP:
Não, cada vez que você clicar no link um input será colocado no formulário. Na action basta você adicionar os campos digitados em um coleção que depois inserir no banco.
Guilherme_MelloPJ Novembro 30, 2006, 4:27pm #13
lounatico:
[quote]a cada vez que eu clicar no link vai gravar no banco em uma tabela??
Tem como inserir no banco cada vez que o usuário clica no link. Mas acho melhor ir adicionando os inputs e no final percorrer uma coleção com todos os valores do inputs e realizar os inserts. Logo acima eu dei essa dica.
Felipe_MPPJ Dezembro 6, 2006, 9:19am #14
Cada imput criado que no caso será mais um novo IP, vai dar um refresh na página? ou vai adicionando no formulario continuamente???
Outra coisa, tem algum exemplo de código que realiza essa tarefa???[/quote]
Guilherme_MelloPJ Dezembro 6, 2006, 9:56am #15
Vai adicionando continuamente, sem dar refresh na página.
Felipe_MPPJ Dezembro 6, 2006, 10:48am #16
utilizo páginas jsp aqui na intrante da empresa, logo esse programa que estou fazendo seguirá o padrão dessa intranet já existente. Não estou conseguindo me situar no código, como colocar imputs em um formulário, isso ainda está confuso, estou falando do código, pois a ideia já assimilei e aprovei, acho que dará certo.