Problema: Document.form.campo é Nulo
#1
Posted 06/11/2007, 13:41
Estou com o seguinte Problema:
Tenho o input:
<input name="anual1" size="7" onblur="VerificaData(this.value,this.name)">
E a função:
function VerificaData(digData,campo)
{
var data = digData;
var tam = data.length;
var camp = campo;
.
.
.
document.form2.camp.focus();
}
O problema é com o nome do input que não está pegando.... Alguém sabe pq??
Grata...
#2
Posted 06/11/2007, 13:53
<script> function VerificaData(digData, campo){ var data = digData; var tam = data.length; var camp = campo; alert(tam + " - " + camp); // document.form2.camp.focus(); } </script> <input name="anual1" size="7" onblur="VerificaData(this.value, this.name)">
Vele lembrar que o método "onblur" só vai ativar a função quando você tirar o foco dessa caisa de texto ou seja clicar em qualquer área fora da mesma ...
Edição feita por: sk15, 06/11/2007, 13:54.
#3
Posted 06/11/2007, 14:02
Tem certeza que não está funcionado ... ou qual parte não está funcionado, na hora de pegar os valores ou na hora de um "focus" no outro formulário pois testei aqui e está OK ... testei assim:
<script> function VerificaData(digData, campo){ var data = digData; var tam = data.length; var camp = campo; alert(tam + " - " + camp); // document.form2.camp.focus(); } </script> <input name="anual1" size="7" onblur="VerificaData(this.value, this.name)">
Vele lembrar que o método "onblur" só vai ativar a função quando você tirar o foco dessa caisa de texto ou seja clicar em qualquer área fora da mesma ...
Pois é, eu tinha testado com alert aqui tbm...é mostrou o nome do campo certinho...
O problema é na hora do focus mesmo....Nessa hora que fala que é nulo ou não é um objeto...
Valew
#4
Posted 06/11/2007, 14:22
Pelo que entendi você quer pegar o nome do campo atual no caso o "anual1" e ao mesmo tempo da um "focus" em outro campo no formulário 2, só que você quer usar o mesmo nome do primeiro campo para ativar o segundo ... assim:
var camp = campo; // Aqui você pega o nome do campo no caso "anual1" // Logo em seguida quer usar o nome para ativar o campo // Resultado: document.form2.anual1.focus(); document.form2.camp.focus();
Porém isso não funciona em JavaScript ele não considera uma variavel como nome de campo, você tem 2 soluções para resolver esse embrolio ...
1- Coloca o nome de campo direto sem dinamismo
document.form2.anual1.focus();
2- Usar a função "eval()" que fazem os códigos serem emulados pelo JS
eval("document.form2." + camp + ".focus();");
Espero que tenha entendido ...
#5
Posted 06/11/2007, 14:29
Agora faz mais sentido o problema é o seguinte ...
Pelo que entendi você quer pegar o nome do campo atual no caso o "anual1" e ao mesmo tempo da um "focus" em outro campo no formulário 2, só que você quer usar o mesmo nome do primeiro campo para ativar o segundo ... assim:var camp = campo; // Aqui você pega o nome do campo no caso "anual1" // Logo em seguida quer usar o nome para ativar o campo // Resultado: document.form2.anual1.focus(); document.form2.camp.focus();
Porém isso não funciona em JavaScript ele não considera uma variavel como nome de campo, você tem 2 soluções para resolver esse embrolio ...
1- Coloca o nome de campo direto sem dinamismodocument.form2.anual1.focus();
2- Usar a função "eval()" que fazem os códigos serem emulados pelo JSeval("document.form2." + camp + ".focus();");
Espero que tenha entendido ...
Não dava para colocar direto porque essa função vai ser usada para vários campos...
Então usei Eval....Deu certinho...
Obrigada...
#6
Posted 06/11/2007, 14:33
Usar o atributo "elements", como o "Alex Hiroshi", demonstra aqui:
http://forum.wmonlin...mp;#entry880193
#7
Posted 06/11/2007, 17:00
Ao declarar:
var todos = document.forms;
Automaticamente a variável "todos" irá armazenar informações (em forma de array) sobre todos os formulários da página. Dessa forma você pode acessar um formulário usando:
document.forms['nome_do_form']; // ou document.forms[0];
Inclusive é possível chamar propriedades dessa forma:
document['write']('abc');
Lógico que usar o write foi só um exemplo sem sentido, mas para uso em classes é uma mão-na-roda!
Yeah I do have some stories, and it's true I want all the glory ...
#9
Posted 11/10/2017, 06:15
Viagra Espana Contrareembolso Metronidazole 200mg Sale Montreal Levitra Dosis viagra Levitra Sublinguale Prezzo need isotretinoin isotret best website overseas Propecia Serious Side Effects Impotence
#10
Posted 11/10/2017, 07:55
Lasix Pay Online American Express Quel Site Pour Acheter Kamagra Over The Counter Medicine For Uti levitra pills Buy Valtrex Cheap Cialis Funziona Depressione
#11
Posted 27/10/2017, 18:15
Levothyroxine To Buy Online Buy Amoxicillin For Pet viagra online prescription Comprar Viagra Sin Receta En Valencia
Acheter Clomide En Ligne Meglio Levitra O Cialis Precio Venta Priligy viagra Propecia Enzymes Elevated Liver Amoxil Effets Cephalexin Dosaging
#12
Posted 09/02/2023, 05:22
25, 8 which is below the threshold of 0 fertility pills online
female viagra porn Echocardiography to look for aortic root dilation
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)