Retroceder   Foros del Web > Programación para sitios web > AJAX

Respuesta
 
Herramientas Desplegado
Antiguo 13-nov-2006, 03:04   #1 (permalink)
RUX
RUX está en el buen camino
 
Avatar de RUX
 
Fecha de Ingreso: enero-2004
Ubicación: Las Palmas de Gran Canari
Mensajes: 514
Enviar un mensaje por MSN a RUX
Molesto Firefox no recoge los POST

Hola a todos/as, mi problema es el siguiente:
Tengo una página en la que aparece un "select" donde elegir el país, y una vez elegido el país, aparece otro "select" a traves de ajax con el listado de sus provincias (todo vía ajax).

El problema surge al darle al botón "enviar" para que lo almacene en la base de datos, ya que en "IE" recoge bien los datos vía POST pero en Firefox no.

Alguien sabe el porque en IE funciona bien recogiendo correctamente los POST "pais" y "provincia" respectivamente y en Firefox no llega?

SALUDOS y gracias de antemano
__________________
Rux.es - Sitio Personal | IslaRock.com - Todo Rock | MiFobia.com - Foros para tratar fobias.
RUX está desconectado   Responder Citando
Antiguo 13-nov-2006, 06:02   #2 (permalink)
vengava no se puede cailificar en este momento
 
Fecha de Ingreso: agosto-2006
Mensajes: 105
Hola, de entrada sería interesante que postearas cómo creas el objeto XMLHttpRequest. Sin ver tu código, es posible que estés creando el objeto sólo para IE.
Saludos.
vengava está desconectado   Responder Citando
Antiguo 13-nov-2006, 06:37   #3 (permalink)
RUX
RUX está en el buen camino
 
Avatar de RUX
 
Fecha de Ingreso: enero-2004
Ubicación: Las Palmas de Gran Canari
Mensajes: 514
Enviar un mensaje por MSN a RUX
Hola, gracias por contestar...
estoy utilizando esta función:

function AJAX2(){
var ajaxs = ["Msxml2.XMLHTTP","Msxml2.XMLHTTP.4.0","Msxml2. XMLH TTP.5.0","Msxml2.XMLHTTP.3.0","Microsoft.XMLHTTP"];
var ajax = false;
for(var i=0 ; !ajax && i<ajaxs.length ; i++){
try{ ajax = new ActiveXObject(ajaxs); }
catch(e) { ajax = false; }
}
if(!ajax && typeof XMLHttpRequest!='undefined') {
ajax = new XMLHttpRequest();
}
return ajax;
}

Funciona en ambos navegadores el hecho de recibir la info desde la base de datos, lo que no funciona en Firefox es el proceso de enviar los datos recibidos. Quiero decir que si selecciono PAIS: ESPAÑA. y PROVINCIA: MADRID de los selects, en Internet Explorer recogería posteriormente al enviar los valores de $_POST['PAIS'] y $_POST['PROVINCIA'] perfectamente, pero firefox parece ignorarlos.

SALUDOS
__________________
Rux.es - Sitio Personal | IslaRock.com - Todo Rock | MiFobia.com - Foros para tratar fobias.
RUX está desconectado   Responder Citando
Antiguo 13-nov-2006, 13:05   #4 (permalink)
RUX
RUX está en el buen camino
 
Avatar de RUX
 
Fecha de Ingreso: enero-2004
Ubicación: Las Palmas de Gran Canari
Mensajes: 514
Enviar un mensaje por MSN a RUX
alguien tiene alguna idea? gracias
__________________
Rux.es - Sitio Personal | IslaRock.com - Todo Rock | MiFobia.com - Foros para tratar fobias.
RUX está desconectado   Responder Citando
Antiguo 13-nov-2006, 16:10   #5 (permalink)
vengava no se puede cailificar en este momento
 
Fecha de Ingreso: agosto-2006
Mensajes: 105
Hola RUX, muestra tu código para ver si vemos algo.
vengava está desconectado   Responder Citando
Antiguo 14-nov-2006, 01:21   #6 (permalink)
RUX
RUX está en el buen camino
 
Avatar de RUX
 
Fecha de Ingreso: enero-2004
Ubicación: Las Palmas de Gran Canari
Mensajes: 514
Enviar un mensaje por MSN a RUX
Okis... lo tengo asi, en valor_actual va un "this.value" en el select para determinar si seleccione el valor 8 que es el que hace aparecer el select de los paises.

Código:
<script>
function AjaxPais(valor_actual, pagina, parametros){
	if(valor_actual == 8){ 
		var ajax = AJAX2();
		if(!ajax){
			alert("No se puede ejecutar este proceso: Error de navegador");
			return false;
		}
		document.getElementById("pais_select_").innerHTML = "<img src='css/progress.gif' style='vertical-align: middle;' /> <strong><?php echo $_SESSION['idioma']['en_espera']; ?></strong>";
		document.getElementById("pais_texto_").innerHTML = '<?php echo $_SESSION['idioma']['pais'].":*"; ?>'
		ajax.open("POST", pagina, true);
		ajax.onreadystatechange = function(){
			if(ajax.readyState == 4){ 
				document.getElementById("pais_select_").innerHTML=ajax.responseText;
			}
		}
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		ajax.send(parametros);
	}else{ 
		document.getElementById("pais_select_").innerHTML = ''
		document.getElementById("pais_texto_").innerHTML = ''
		document.getElementById("provincia_select_").innerHTML = ''
		document.getElementById("provincia_texto_").innerHTML = ''
	}
}
Lo tengo parecido al de esta web:
http://www.formatoweb.com.ar/ajax/se..._3_niveles.php

La única diferencia es que mis selects no se muestran en pantalla y aparecen al seleccionar la opción correspondiente, en esta pagina parece que ya existen y pone "Selecciona opcion...".

De esta forma creo que al no formar parte del formulario en un primer instante, firefox lo ignora pero IE no.

¿Alguna idea?
SALUDOS
__________________
Rux.es - Sitio Personal | IslaRock.com - Todo Rock | MiFobia.com - Foros para tratar fobias.
RUX está desconectado   Responder Citando
Antiguo 14-nov-2006, 04:13   #7 (permalink)
vengava no se puede cailificar en este momento
 
Fecha de Ingreso: agosto-2006
Mensajes: 105
Ahora no tengo tiempo pero:
Mira en firefox en el menú herramientas > consola Javascript
Dale a limpiar, vuelve a llamar a la página y a ver si te pone algo
vengava está desconectado   Responder Citando
Antiguo 14-nov-2006, 11:08   #8 (permalink)
RUX
RUX está en el buen camino
 
Avatar de RUX
 
Fecha de Ingreso: enero-2004
Ubicación: Las Palmas de Gran Canari
Mensajes: 514
Enviar un mensaje por MSN a RUX
Siempre trabajo con la consola puesta... y no me pone ningun error, simplemente el firefox no recoge los datos enviados el internet explorer si :(
que cosa mas rara
__________________
Rux.es - Sitio Personal | IslaRock.com - Todo Rock | MiFobia.com - Foros para tratar fobias.
RUX está desconectado   Responder Citando
Antiguo 15-nov-2006, 07:20   #9 (permalink)
ikhuerta no se puede cailificar en este momento
 
Avatar de ikhuerta
 
Fecha de Ingreso: octubre-2006
Ubicación: Barcelona
Mensajes: 104
Enviar un mensaje por MSN a ikhuerta
Buenas,

Por mi experiencia puedo decir que a FireFox no le gusta demasiado que le crees objetos nuevos de formulario mediante innerHTML.

Prueba a generar el Select y sus options con las herramietnas de nodos. No solo aliviaras un poco de proceso al navegador sino que firefox seguramente pasara a entenderlo todo bien.

http://www.miliuco.net/docs/lola_cardenas/RefJS.html

Aqui encontraras las funciones para manejar nodos.
__________________
ikhuerta:
Iñaki Huerta
ikhuerta está desconectado   Responder Citando
Antiguo 15-nov-2006, 11:47   #10 (permalink)
RUX
RUX está en el buen camino
 
Avatar de RUX
 
Fecha de Ingreso: enero-2004
Ubicación: Las Palmas de Gran Canari
Mensajes: 514
Enviar un mensaje por MSN a RUX
Hola! gracias por contestar... si tuvieses algun ejemplo mas practico donde se entendiese un poco más lo que comentas, te agradecería que lo publicaras.

Gracias
__________________
Rux.es - Sitio Personal | IslaRock.com - Todo Rock | MiFobia.com - Foros para tratar fobias.
RUX está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 01:14.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93