pessoal eu fiz essa função em java script para calcular a média
tipo eu tenho um formulários que é dividido em etapas ! de 1-4
e cada etapa e divida em 2 avaliaçoes, sendo um a 1 avaliação pode ter até 8 notas, e a segunda pode ter até 4 notas (mas isso não é obrigatório)
o que eu preciso é, ler os primeiros 8 campos do formularios e dar a media da mp1(média processual 1) soma todos os campos
dividido pelo numeto de campos diferente de 0 e de "" fiz assim como está o código embaixo. mas não faz nada !! alguma luz ??
function calc1(){
x=0;
valor=0;
for (i=1;i<=8;i++){
campo_atual=eval("document.form1.av" + (i*10+1));
if (campo_atual.value && campo_atual.value!=""){
valor+=parseFloat(campo_atual.value);
x++;
}
}
if (x==0){
alert("Nenhum campo está preenchido")
}else{
document.form1.p11.value=valor/x;
}
}
eu chamo assim no meu formulário
<td bgcolor="#B4CDCD"><input name="av1<?=$cont?>" type="text" value="<?=$av1?>" size="1" maxlength="4" onkeyup="calc1();"/>
<td bgcolor="#B4CDCD"><input name="av2<?=$cont?>" type="text" value="<?=$av2?>" size="1" maxlength="4" onkeyup="calc1();" />
<td bgcolor="#B4CDCD"><input name="av3<?=$cont?>" type="text" value="<?=$av3?>" size="1" maxlength="4" onkeyup="calc1();" />
<td bgcolor="#B4CDCD"><input name="av4<?=$cont?>" type="text" value="<?=$av4?>" size="1" maxlength="4" onkeyup="calc1();" />
<td bgcolor="#B4CDCD"><input name="av5<?=$cont?>" type="text" value="<?=$av5?>" size="1" maxlength="4" onkeyup="calc1();" />
<td bgcolor="#B4CDCD"><input name="av6<?=$cont?>" type="text" value="<?=$av6?>" size="1" maxlength="4" onkeyup="calc1();" />
<td bgcolor="#B4CDCD"><input name="av7<?=$cont?>" type="text" value="<?=$av7?>" size="1" maxlength="4" onkeyup="calc1();" />
<td bgcolor="#B4CDCD"><input name="av8<?=$cont?>" type="text" value="<?=$av8?>" size="1" maxlength="4" onkeyup="calc1();" />
Att,
Aramis Melo
desde já agradeço muito !