Foros del Web » Programando para Internet » Javascript »

me funciona en chrome pero no en mozilla ni opera

Estas en el tema de me funciona en chrome pero no en mozilla ni opera en el foro de Javascript en Foros del Web. tengo este codigo para un sistema que estoy haciendo en php, estoy contento porque ya casi lo termino.....pero siempre escribia, corregia y probaba en chrome....y ...
  #1 (permalink)  
Antiguo 18/05/2010, 07:15
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/México
Mensajes: 57
Antigüedad: 14 años, 9 meses
Puntos: 0
me funciona en chrome pero no en mozilla ni opera

tengo este codigo para un sistema que estoy haciendo en php, estoy contento porque ya casi lo termino.....pero siempre escribia, corregia y probaba en chrome....y segun yo quedo bien, cuando intento usarlo con otro explorador no me funciona :S .... la mayoria del codigo lo escribi, excepto el de ocultaitems y el de items ...

me funcionan en chrome..pero no en los demas exploradores...es algo relacionado con los estandares? o escribi algo mal

Código:
function consulta() {
		document.formRadio.submit()
}
function deshabilita(){
	var criterio=document.formRadio.criterioRep.value
	var elemento=document.formDatos.axion
	switch (criterio){
/*		case "Taller":
			for (var i=0;i<elemento.length;i++){
				if (elemento[i].value=="Entrega"){
						elemento[i].disabled=true						
						break;
					}			
			}
		break;*/
		case "Reparados":
			for (var i=0;i<elemento.length;i++){
				if (elemento[i].value=="Servicio"){
						elemento[i].disabled=true						
						break;
					}			
			}		
		break;
		case "Entregados":
			for (var i=0;i<elemento.length;i++){
				if (elemento[i].value=="Servicio"){
						elemento[i].disabled=true						
						break;
					}			
			}		
			for (var i=0;i<elemento.length;i++){
				if (elemento[i].value=="Entrega"){
						elemento[i].disabled=true						
						break;
					}			
			}		
			
		
		break;
	}
}
function ocultado(id){
      var obj = document.getElementById('accion_' + id)
	  obj.style.display = 'none'	  
	  deshabilita()
}
function items(id){
      var obj = document.getElementById('accion_' + id)
	  if(obj.style.display == 'block') obj.style.display = 'none'
	  else obj.style.display = 'block'
	  
}
function ocultaItems(){
          listado = document.getElementById('lista')
          contenedores = listado.getElementsByTagName('div')
          numContenedores = contenedores.length
          for(m=0; m < numContenedores; m++){
             if(contenedores[m].id.indexOf('item_') == 0)
             contenedores[m].style.display = 'none'
          }
}
function contar(){
var checkboxes = document.formDatos.idR
var cont=0; 
 	for (var x=0;x<checkboxes.length;x++){
		if (checkboxes[x].checked) {		
			cont = cont+1;
		}

	}
	return cont
}

function obtenerChecked(){
var checkboxes = document.formDatos.idR
var checked = document.formDatos.idR
 	for (var x=0;x<checkboxes.length;x++){
		if (checkboxes[x].checked) {
			if (checkboxes[x].value!="bandera"){
				checked=checkboxes[x].value
			}
		}
	}
	return checked
}
function seleccionado(){
var elemento=document.formDatos.axion
	for (var i=0;i<elemento.length;i++){
				if (elemento[i].checked){
						return true
						break;
					}			
	}	
	
	
}

function accionCK(){
var	cont = contar();
var seleccionar = seleccionado()
var checked=obtenerChecked();

	if (!seleccionar){
		alert("No se seleccionó una acción")
		break
		}
	if (cont != 2){
		alert('Solamente se acepta un Número de folio por operación')
		break;
		}
		else {
		document.formDatos.valorFolio.value=checked
		document.formDatos.submit()
		}
}		
function calcula(hard, serv){
	var suma=0;
	suma=(parseFloat(hard)+parseFloat(serv))
	iva=suma*1.15	
	document.form1.total1.value=suma
	document.form1.total.value=iva
}

saludos
  #2 (permalink)  
Antiguo 18/05/2010, 08:16
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: me funciona en chrome pero no en mozilla ni opera

¿qué dicen las consolas de errores de los navegadores que fallan?
  #3 (permalink)  
Antiguo 18/05/2010, 09:16
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/México
Mensajes: 57
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: me funciona en chrome pero no en mozilla ni opera

no falla, en realidad no hace nada de nada, como los errores de javascript en los que te falla algo y ya no ejecuta el resto

lo de ls consolas de errores no lo he usado (pues no lo se usar jeje) voy a intentar ver si puedo sacar algo y lo posteo

gracias, saludos
  #4 (permalink)  
Antiguo 18/05/2010, 09:21
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/México
Mensajes: 57
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: me funciona en chrome pero no en mozilla ni opera

creo ya encontre lo que me dices, salta el siguiente error en la consola de errores de mozilla:

"unlabeled break must be inside loop or switch
break ...linea 106"

creo que estoy rompiendo algun bucle, "que chrome me deja pasar" pero los demas no, haber si logro encontrar algo
  #5 (permalink)  
Antiguo 18/05/2010, 10:03
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: me funciona en chrome pero no en mozilla ni opera

Tenés dos break que no están en un bucle, y por lo tanto son errores de sintaxis (además de que, por no estar en un bucle, son inútiles):

Código Javascript:
Ver original
  1. if (!seleccionar){
  2.         alert("No se seleccionó una acción")
  3.         break <---
  4.         }
  5.     if (cont != 2){
  6.         alert('Solamente se acepta un Número de folio por operación')
  7.         break; <---
  8.         }
  9.         else {
  10.         document.formDatos.valorFolio.value=checked
  11.         document.formDatos.submit()
  12.         }


Saludos.
  #6 (permalink)  
Antiguo 18/05/2010, 10:07
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/México
Mensajes: 57
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: me funciona en chrome pero no en mozilla ni opera

ok, pero "segun yo" esos breaks son necesarios para romper el codigo y evitar siga ejecutandose .... entonces si eso no debe de ir ahi? como hago para evitar que se ejecute el siguente codigo sin usar breaks

pense que estos se podian usar no necesariamente dentro de un bucle?

saludos
  #7 (permalink)  
Antiguo 18/05/2010, 10:58
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: me funciona en chrome pero no en mozilla ni opera

Estás dentro de una función, para salir de la función usás return, no break
Además, si te encontrás teniendo que salir de la función en diversos puntos en vez de tener un valor de retorno o punto de salida único, yo en tu lugar revisaría la función y la modificaría para tener un punto de salida único. Facilita la comprensión del código.


Saludos.
  #8 (permalink)  
Antiguo 18/05/2010, 14:47
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/México
Mensajes: 57
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: me funciona en chrome pero no en mozilla ni opera

tienes mucha razon.. ya los estuve analizando y estan de mas esos break...no recuerdo bien porque los puse, recuerdo me arrojaba algun error sin ellos o invocaba funciones que yo no queria pero ahora me va bien, si algo anda mal despues..ya andare pidiendo ayuda de nuevo jeje muchas gracias por tu observacion, saludos

Etiquetas: chrome, mozilla, opera
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 18:27.