Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/07/2011, 03:16
javislim
 
Fecha de Ingreso: septiembre-2008
Mensajes: 70
Antigüedad: 16 años, 1 mes
Puntos: 0
El clasico Se requiere un objeto IE

Hola después de googlear e invertir demasiado tiempo en esto acudo a ustedes por si alguien me echa un cable, el siguiente fragmento de código funciona en todos los navegadores excepto el IE !

El código lo que hace es obtener un arreglo de todos los input con determinado nombre, recorrer el mismo comprobando q el value sea mayor que 0 y si es así obtener value y nombre de otro input cuyo id esta formado por el id del elemento del arreglo mas la cadena _PDIA, como decía, funciona en todos los navegadores menos en el IE que indica el error en la línea " preciod = (document.getElementById(preciodia)).name;" si ha alguien se le ocurre algo ?

Gracias de antemano.
Saludos

<script type="text/javascript">
function test(a)
{
var str = a.substring(0,(a.length - 6));
miArray = document.getElementsByName(str);

var total = 0;
var totalc = 0;

for (j = 0; j < miArray.length; j++)
{
var udades = miArray[j].value;

if( udades != '')
{

var preciodia = miArray[j].id + '_PDIA' ;

preciod = (document.getElementById(preciodia)).name; //Aqui indica el error
unidadesd = (document.getElementById(preciodia)).value;

if(unidadesd != '')
{
total = total + (preciod * unidadesd);
}


}

total = total * udades;
totalc = totalc + total;
total = 0;
}

var final = str + '_total'
document.getElementById(final).value = totalc;

}

</script>