• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

infopc

construtor

6 mensagens neste tópico

bom no desenvolvimento do site que estou a fazer tenho um picolo problema

tenho um formulario que estou a manipular com javascript

<form id="f1">
<select  size="1" name=var1 onchange="calcula()"></select>
<option value=1.34>1.34</option>
<option value=2.56>2.56</option>
<select  size="1" name=var2 onchange="calcula()"></select>
<option value=1.23>1.23</option>
<option value=2.12>2.12</option>
<input type=text name=resulatdo value="">
</form>

funcao java

function calcula()
{
var val1=document.getElementById(var1);
var val2=document.getElementById(var2);
f1.resultado.value=parseFloat(val1)+parseFloat(val2)
}

ate aqui tudo bem, quando testo no IE funca na boa mas no firefox nadinha d nada lol

alguem sabe porque?

obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o getElementById pressupoe que o elemento tenha um id

tu só estas a usar o atributo name, experimenta por a atributo id=""

EDIT:

com id=""  quero dizer id="var1" para o primeiro select e id="var2" para o segundo

e é bom usares sempre as "" nos valores de todos os atributos da tag

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

é exactamente isso... o name é para o ie e o id é para os outros browsers...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Funciona em todos os browsers chamar directamente o value de um select como ele tá a fazer?? Eu tava convencido (na verdade nunca experimentei de outra forma...) que era preciso algo assim:

var val1 = document.getElementById('var1').option[document.getElementById('var1').selectedIndex].value;

O que eu aprendo por estas bandas...!

Sugestão: usa um framework tipo Prototype ou jquery, facilita muito a programação em javascript, nem que seja para evitar a lenga-lenga do "document.getElementById();"...

EDIT: pequeno erro no código.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Funciona em todos os browsers chamar directamente o value de um select como ele tá a fazer?? Eu tava convencido (na verdade nunca experimentei de outra forma...) que era preciso algo assim:

var val1 = document.getElementById('var1').option[document.getElementById('var1').selectedIndex].value;

O que eu aprendo por estas bandas...!

Sugestão: usa um framework tipo Prototype ou jquery, facilita muito a programação em javascript, nem que seja para evitar a lenga-lenga do "document.getElementById();"...

EDIT: pequeno erro no código.

Eu acho que tem que ser como tu dizes e não como ele faz

mas pelos vistos no IE bomba  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Lol o IE é aquela máquina, funciona quando menos se espera, e quando é suposto tar tudo bem breaka! Ahah

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora