Foros del Web » Programando para Internet » Javascript »

funcion comprobar() no m funciona

Estas en el tema de funcion comprobar() no m funciona en el foro de Javascript en Foros del Web. Tengo esta funcion que sirve para comprobar si esta marcado uno de los dos input type="radio" que tengo (un para transferencia y otro contrareembolso) @import ...
  #1 (permalink)  
Antiguo 24/06/2010, 05:21
Avatar de moronino  
Fecha de Ingreso: marzo-2010
Mensajes: 55
Antigüedad: 14 años, 1 mes
Puntos: 0
funcion comprobar() no m funciona

Tengo esta funcion que sirve para comprobar si esta marcado uno de los dos input type="radio" que tengo (un para transferencia y otro contrareembolso)

Código Javascript:
Ver original
  1. function comprobar(){
  2.     var seleccionado=false;
  3.     for(i=0;i<formpedido.formaPago.length;i++) {
  4.         if(formpedido.formaPago[i].checked) {
  5.             seleccionado=true;
  6.         }
  7.     }
  8.    
  9.     if (!seleccionado) {
  10.         alert ("Es imprescindible elegir la forma de pago");
  11.     } else {
  12.         if (formpedido.totalPedido.value!="NaN") {
  13.             document.formpedido.submit();      
  14.         }
  15.     }
  16. }

El problema esta cuando utilizo FIREFOX, en ningun otro navegador me da problemas. Nunca me da el aviso del alert y ni marcando el radio.

ayudaa
  #2 (permalink)  
Antiguo 24/06/2010, 16:15
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: funcion comprobar() no m funciona

¿seguro?, porque solo he visto que IE soporte referencias directas: formpedido.formaPago.length

para garantizar que funcione en TODOS los browser, debes de usarlo de acuerdo al DOM, como es debido:

document.forms['formpedido'].elements['formaPago'].length

de esa forma si esta garantizado

Etiquetas: comprobar, funcion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:38.