Foros del Web » Programando para Internet » Javascript »

No me funciona rutina javascript en FIREFOX

Estas en el tema de No me funciona rutina javascript en FIREFOX en el foro de Javascript en Foros del Web. HOla, una consulta. Uso la siguiente rutina para que, al activar en un checkbox, active la caja de texto (textbox) que tiene al lado, para ...
  #1 (permalink)  
Antiguo 15/03/2007, 09:58
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 9 meses
Puntos: 0
Pregunta No me funciona rutina javascript en FIREFOX

HOla, una consulta. Uso la siguiente rutina para que, al activar en un checkbox, active la caja de texto (textbox) que tiene al lado, para poder escribir.
Resulta que esta funcion anda barbaro en IE, pero en FIREFOX no funciona el evento de activar la caja de texto.

aca les paso la funcion, donde a es el nombre del checkbox y b es el nombre del textbox a activar

Código PHP:
function activar(a,b) {//activa los textbox//


var checkbox document.getElementByName(a); 
var 
textbox document.getElementByName(b); 

    if (
checkbox.checked == true) { 
        
textbox.disabled false
        
textbox.style.backgroundColor "#ffffff";
        
//alert('Por favor ingrese la cantidad que desea adquirir');
        
textbox.focus();
    } else { 
        
textbox.disabled true;
        
textbox.value "";  
        
textbox.style.backgroundColor "#FF99CC";
    } 

  #2 (permalink)  
Antiguo 15/03/2007, 10:02
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: No me funciona rutina javascript en FIREFOX

Hola heman25

Pon un id a la caja de texto y en lugar de utilizar document.getElementByName usa document.getElementById

Saludos,
  #3 (permalink)  
Antiguo 15/03/2007, 10:21
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: No me funciona rutina javascript en FIREFOX

muchas gracias
  #4 (permalink)  
Antiguo 15/03/2007, 17:44
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: No me funciona rutina javascript en FIREFOX

getElementByName ¿existe? Pensaba que sólo existía getElementsByName...
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #5 (permalink)  
Antiguo 16/03/2007, 02:53
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Re: No me funciona rutina javascript en FIREFOX

Creo que te refieres, derkenuke, a getElementsByTagName
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #6 (permalink)  
Antiguo 16/03/2007, 05:02
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: No me funciona rutina javascript en FIREFOX

Cita:
Iniciado por KarlanKas
Creo que te refieres, derkenuke, a getElementsByTagName
Sí, me he confuncido. Me referia a getElementsByTagName. Lo otro lo he leído en el post de heman...

Cita:
Iniciado por heman25 Ver Mensaje
Código PHP:
var checkbox document.getElementByName(a); 
var 
textbox document.getElementByName(b); 


y como dice que en IE sí que funciona... aunque ya sabemos que IE hace lo que le da la gana ¿no? pero por curiosidad...
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #7 (permalink)  
Antiguo 06/04/2007, 07:48
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: No me funciona rutina javascript en FIREFOX

Hola:

No sé si estoy muy desfasado, pero getElementsByName es un método DOM válido (en plural porque los names pueden repetirse (arrays de checkboxes, radios, imágenes...) bueno, con las imágenes tal vez no sirva en xhtml...

Lamentablemente explorer no implementó bien este método y es desaconsejable (al menos yo no lo aconsejaba porque sabía de esta mala implementación) porque en vez de crear arreglos a partir del atributo name (byName...) los arreglos los creba a partir de los id (array de id's... [atributo que no se debe repetir... ]...)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 06/04/2007, 08:04
 
Fecha de Ingreso: mayo-2003
Ubicación: Buenos Aires
Mensajes: 97
Antigüedad: 20 años, 11 meses
Puntos: 0
Re: No me funciona rutina javascript en FIREFOX

Como dice caricatos, el metodo se llama getElementsByName (con s).

Te recomiendo usar el ById y acordate que firefox no toma como id por defecto al name como si lo hace explorer.

Ej que funciona en ie pero no en el zorro de fuego

<input type="text" name="hola">

var pepe = document.getElementById("hola")

En el zorrito no anda ya que el input no tiene la propiedad id pero sin embargo explorer la toma.
  #9 (permalink)  
Antiguo 06/04/2007, 09:56
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: No me funciona rutina javascript en FIREFOX

Cita:
Iniciado por Antigol Ver Mensaje
Como dice caricatos, el metodo se llama getElementsByName (con s).

Te recomiendo usar el ById y acordate que firefox no toma como id por defecto al name como si lo hace explorer.

Ej que funciona en ie pero no en el zorro de fuego

<input type="text" name="hola">

var pepe = document.getElementById("hola")

En el zorrito no anda ya que el input no tiene la propiedad id pero sin embargo explorer la toma.
Que explorer reconozca ese elemente está muy mal...

get[tomar]-Element[Elemento]-By[por]-Id[id (atributo id)]
La función indica que se referencia un elemento por un atributo determinado, en concreto el id... entonces no tendría que ser referenciado por el name
Además getElementsByName (Elements implica plural de el atributo name, que puede duplacarse cuanto se quiera... pueden exixtir varias imágenes con el mismo nombre... también varios radios o checkboxes... incluso en los formularios pueden replicarse campos de texto, o cualquier otro... pero explorer en vez de referenciar elementos por ese atributo, lo hace por el id... justamente un atributo que no puede suplicarse.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #10 (permalink)  
Antiguo 06/04/2007, 10:50
 
Fecha de Ingreso: mayo-2003
Ubicación: Buenos Aires
Mensajes: 97
Antigüedad: 20 años, 11 meses
Puntos: 0
Re: No me funciona rutina javascript en FIREFOX

Si caricatos, lamentablemente el ie hace lo que quiere. Cuando me puse a estudiar ajax me hicieron reir los if de la funcion js que llamaba al objeto httprequest que decia: (lo pongo en pseudocodigo porque no me acuerdo la sintaxis exacta)

function bblabla

//The w3c standard way to do it
if navegador != ie
llamada al objeto httprequest
//The ie way to do it. else
llamada al msxml


Utilizando mi humor nerd me rei un buen rato.
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 13:59.