nunolevezinho Posted May 16, 2012 at 11:13 AM Report #456017 Posted May 16, 2012 at 11:13 AM (edited) Boas estou tentar atribuir a um campo de um formulatio, uma variavel js. setInterval(function() { var string = document.formulario.nome.value; sndReq(string); alert(string); }, 1000); <form id="form" name="form"> <input type="text" id="nome" name="nome"/> </form> Mas, nao sei porquê, isto nao me esta a reconhecer. Dá-me sempre: undefined O que estou a fazer mal? Edited May 16, 2012 at 11:14 AM by nunolevezinho
sandcar Posted May 16, 2012 at 11:20 AM Report #456018 Posted May 16, 2012 at 11:20 AM Olá, Não será isto ? setInterval(function() { var string = document.getElementById("nome").value; // sndReq(string); alert(string); }, 1000);
HappyHippyHippo Posted May 16, 2012 at 11:22 AM Report #456019 Posted May 16, 2012 at 11:22 AM uso tanto jquery que ja nem me lembro exactamente como é mas não vejo nenhum elemento formulario no HTML: document.formulario.nome.value; IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
nunolevezinho Posted May 16, 2012 at 11:24 AM Author Report #456020 Posted May 16, 2012 at 11:24 AM (edited) Testei das duas maneiras e nenhuma deu. O Estranho é que numa página a parte apenas com esse código, ela funciona.. EDIT: Já resolvi obrigado. Usei o getElementByName e ja deu o.0 Edited May 16, 2012 at 11:26 AM by nunolevezinho
HappyHippyHippo Posted May 16, 2012 at 11:28 AM Report #456023 Posted May 16, 2012 at 11:28 AM se nao deu por getElementByID é porque deverás ter outro elemento com esse id IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
sandcar Posted May 16, 2012 at 11:35 AM Report #456025 Posted May 16, 2012 at 11:35 AM A observação do HappyHippyHippo é pertinente. Atênção com id's duplicados. Dá sempre molho 😄😁
nunolevezinho Posted May 16, 2012 at 12:00 PM Author Report #456032 Posted May 16, 2012 at 12:00 PM (edited) Estou com outro problema. Tenho vários formulários com um campo igual em todos eles e é desse mesmo campo que preciso de tirar um valor para o js. O problema é que o javascript se baralha porque os campos têm os nomes/ids iguais, entao decidi fazer um ciclo em php "while" dentro do javascript e do formulário. Ficou algo do género: setInterval(function() { var string = document.getElementById("nome_clienteDesktops").value; var string = document.getElementById("nome_clienteImpressora").value; sndReq(string); alert(string); }, 1000); Formulário1: <div id="Desktops" style="display: none"> <form action="reparacao.php?action=inserir" method="POST"> <div align="center"><h4>Desktops</h4></div> <table> <tr> <td>Nome Cliente:</td> <td><input type="text" id="nome_clienteDesktops"> <font color="red"> <b> <div id="foo"></div> </b> </font> </td> </tr> </table> </form> </div> Formulário2: <div id="Impressora" style="display: none"> <form action="reparacao.php?action=inserir" method="POST"> <div align="center"><h4>Impressora</h4></div> <table> <tr> <td>Nome Cliente:</td> <td><input type="text" id="nome_clienteImpressora"> <font color="red"> <b> <div id="foo"></div> </b> </font> </td> </tr> </table> </form> </div> Mas o valor do alert é sempre vazio. Como posso resolver isto, sendo que se preencher o formulario Desktops ele faço a função sndReq com a string do form Desktops e não de outro qualquer? Edited May 16, 2012 at 12:02 PM by nunolevezinho
ruiFernandes Posted May 16, 2012 at 01:02 PM Report #456041 Posted May 16, 2012 at 01:02 PM podes usar assim e dás um nome diferente a cada formulário document.forms["nome_formulario"]["nome_campo_formulario"].value - Rui Fernandes
HappyHippyHippo Posted May 16, 2012 at 01:04 PM Report #456042 Posted May 16, 2012 at 01:04 PM olha bem para o teu código : var string = document.getElementById("nome_clienteDesktops").value; var string = document.getElementById("nome_clienteImpressora").value; estás a descartar o valor na segunda atribuição IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
nunolevezinho Posted May 16, 2012 at 02:04 PM Author Report #456064 Posted May 16, 2012 at 02:04 PM (edited) olha bem para o teu código : var string = document.getElementById("nome_clienteDesktops").value; var string = document.getElementById("nome_clienteImpressora").value; estás a descartar o valor na segunda atribuição Sim eu percebi, mas sendo asssim como faço para usar a 'string' do formulário actual que estou a preencher e não dos outros? Ex: No Form1 quero usar a string_desktops, mas no Form2 quero usar a string_Impressora. Como diferencio uma da outra e escolha a qual pretendo usar? Edited May 16, 2012 at 02:05 PM by nunolevezinho
HappyHippyHippo Posted May 16, 2012 at 04:22 PM Report #456137 Posted May 16, 2012 at 04:22 PM var string1 = document.getElementById("nome_clienteDesktops").value; var string2 = document.getElementById("nome_clienteImpressora").value; IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now