Jump to content


Photo

Problema: Document.form.campo é Nulo


  • Faça o login para participar
11 replies to this topic

#1 cris_gavioli

cris_gavioli

    Turista

  • Usuários
  • 55 posts
  • Sexo:Feminino
  • Localidade:São Paulo

Posted 06/11/2007, 13:41

Olá pessoal!

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 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 06/11/2007, 13:53

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 ...

Edição feita por: sk15, 06/11/2007, 13:54.


#3 cris_gavioli

cris_gavioli

    Turista

  • Usuários
  • 55 posts
  • Sexo:Feminino
  • Localidade:São Paulo

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:

&lt;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 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 06/11/2007, 14:22

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 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 cris_gavioli

cris_gavioli

    Turista

  • Usuários
  • 55 posts
  • Sexo:Feminino
  • Localidade:São Paulo

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 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 ...


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 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 06/11/2007, 14:33

Já ia até me esquecendo ... há uma terceira solução ...
Usar o atributo "elements", como o "Alex Hiroshi", demonstra aqui:
http://forum.wmonlin...mp;#entry880193

#7 bimonti

bimonti

    Super Veterano

  • Usuários
  • 2654 posts
  • Sexo:Masculino

Posted 06/11/2007, 17:00

Isso é conhecido como Array Notation. Em javascript vários objetos estão disponíveis em escopo global. forms, elements, links, etc...

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!
WebFórum - Equipe de Desenvolvimento - Monitor
Posted Image
Yeah I do have some stories, and it's true I want all the glory ...

#8 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 01/10/2017, 12:54

Levitra Kopa Discount Elocon Best Website E Testosterone Finasteride Propecia cialis Were To Buy Brand Name Cialis Generic Priligy Online

#9 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 11/10/2017, 06:15

Free Samples Of Levitra viagra Nolvadex Bodybuilding Aacifemine Clomid Je Canadian Pharmacy 24 Hour Online
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 HaroNism

HaroNism

    Super Veterano

  • Usuários
  • 15385 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 11/10/2017, 07:55

Achat Cialis 20mg Viagra Generique Fiable viagra prescription Kamagra Impacto
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 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 27/10/2017, 18:15

Cialis Interacciones viagra Abces Clomid CytotecСÐРСÐвРСÐвÐâ¢Ð ÐЮ Prix Pharmacie
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 JeffMalm

JeffMalm

    Super Veterano

  • Usuários
  • 12254 posts
  • Sexo:Feminino
  • Localidade:Mount Carey

Posted 09/02/2023, 05:22

Cancer Invest 27 802 808 how long does tamoxifen stay in your system 105 reports 104 reports 105 reports 226 reports 219 reports 118 reports 118 reports 126 reports 153 reports 125 reports 144 reports 105 reports 270 reports 131 reports 108 reports 150 reports 121 reports 279 reports 223 reports 108 reports 118 reports 253 reports 178 reports 178 reports 158 reports 110 reports 162 reports 149 reports 180 reports 109 reports 274 reports 122 reports 155 reports 192 reports 255 reports 136 reports 295 reports 119 reports 109 reports 233 reports 227 reports 111 reports 143 reports 169 reports 102 reports 105 reports 229 reports 380 reports 139 reports 248 reports 123 reports 108 reports 116 reports 135 reports 260 reports 132 reports 192 reports 242 reports 101 reports 117 reports 145 reports 126 reports
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)

IPB Skin By Virteq