[Php-avanzado] problema con XMLHttpRequest
leandro saubiette
saubietteleandro en gmail.com
Vie Jun 14 00:17:13 ART 2013
Todo sirve mañana lo aplico, mi problema es que cuando quiero seleccionar
el país y que se cargue el select con las provincias no carga, lo quise
hacer con array para no perder tanto tiempo con armar la bd con las tablas
y los datos será por declarar mal el array?
Gracias
El jun 14, 2013 12:10 a.m., "Ariel Fernández" <arielf05 en gmail.com> escribió:
> Hola, no dijiste cuál es el problema, pero para empezar, y según lo que he
> aprendido, tenés mal definidos los array, ya que cada valor va entre
> comillas, y cada uno separado a su vez por comas. Además, se utiliza new
> Array y no array.
> Ej:
> var arrProv = new Array(
> "Buenos Aires",
> "Buenos Aires-GBA",
> "Capital Federal",
> "Catamarca",
> "Chaco"
> )
>
>
>
> var url = "Ejercicio7.php?codProv="+ escape(codProv); ->*Esta linea que
> haria?*
> *Ésta línea arma la url con el valor seleccionado del campo select
> llamado paises, el cual especificaste en:*
> var codProv = document.getElementById('paises').options[document.
> getElementById('paises').selectedIndex].value;
>
>
>
> xmlHttp.send(null); -> * Vi en el modulo que aca se envia "nombre=?" +
> escape(nombre) no entendi esta parte googleando vi que tmb envian null*
> xmlHttp.open("GET",url,true);*->aca envia la url con el codigo de la
> provincia? Se puede enviar por POST?*
> *Sí, se puede, pero es ligeramente diferente. Mirá acá para tener una
> guía:*
> *
> http://www.cristalab.com/tutoriales/enviar-datos-por-post-y-get-en-ajax-en-una-funcion-c237l/
> *
> *
> *
> *
> *
> *
> *
> *Lo de la carga dinámica del select es una de las opciones, la otra sería
> generarlo con php y consultas a una tabla.*
> *
> *
> *
> *
> Espero que te sirva.
> Saludos
> *
> *
> *
> *
>
>
> El 13 de junio de 2013 11:37, leandro saubiette <
> saubietteleandro en gmail.com> escribió:
>
>> Gente paso este codigo haber si alguien me puede ayudar quisiera cargar
>> mediante ajax las provincias segun el pais seleccionado, es el ejercicio 7
>> de la clas de js
>>
>> Muchas gracias
>>
>>
>>
>> var xmlHttp = new XMLHttpRequest();
>>
>>
>> var argentina=array("Ciudad de Buenos Aires,Buenos
>> Aires,Catamarca,Chaco,Chubut,Córdoba,Corrientes,Entre Ríos,Formosa,Jujuy,La
>> Pampa,La Rioja,Mendoza,Misiones,Neuquén,Río Negro,Salta,San Juan,San
>> Luis,Santa Cruz,Santa Fe,Santiago del Estero,Tierra del Fuego,Tucumán");
>>
>>
>>
>> var argelia = array("Adrar,Aïn Témouchent,Annaba,Argel,Aïn
>> Defla,Batna,Biskra,Blida,Bordj Bou
>> Arréridj,Bouira,Boumerdès,Bujía,Béchar,Chlef,Constantina,Djelfa,El
>> Bayadh,El Oued,El
>> Tarf,Ghardaïa,Guelma,Jijel,Khenchela,Laghouat,M_Sila,Médéa,Mila,Mostaganem,Muaskar,Naama,Orán,Ouargla,Oum
>> el-Bouaghi,Relizan,Saida,Sidi Bel Abbes,Skikda,Provincia de Souk
>> Ahras,Sétif,Tamanghasset,Tiaret,Tinduf,Tipasa,Tissemsilt,Tizi
>> Ouzou,Tlemecén,Tébessa");
>>
>> var xmlHttp = new XMLHttpRequest();
>> var argentina=array("Ciudad de Buenos Aires,Buenos
>> Aires,Catamarca,Chaco,Chubut,Córdoba,Corrientes,Entre Ríos,Formosa,Jujuy,La
>> Pampa,La Rioja,Mendoza,Misiones,Neuquén,Río Negro,Salta,San Juan,San
>> Luis,Santa Cruz,Santa Fe,Santiago del Estero,Tierra del Fuego,Tucumán");
>> var argelia = array("Adrar,Aïn Témouchent,Annaba,Argel,Aïn
>> Defla,Batna,Biskra,Blida,Bordj Bou
>> Arréridj,Bouira,Boumerdès,Bujía,Béchar,Chlef,Constantina,Djelfa,El
>> Bayadh,El Oued,El
>> Tarf,Ghardaïa,Guelma,Jijel,Khenchela,Laghouat,M_Sila,Médéa,Mila,Mostaganem,Muaskar,Naama,Orán,Ouargla,Oum
>> el-Bouaghi,Relizan,Saida,Sidi Bel Abbes,Skikda,Provincia de Souk
>> Ahras,Sétif,Tamanghasset,Tiaret,Tinduf,Tipasa,Tissemsilt,Tizi
>> Ouzou,Tlemecén,Tébessa");
>> function callServer()
>> {
>> //Obtiene el nombre escrito a medida que se escribe
>> var codProv =
>> document.getElementById('paises').options[document.getElementById('paises').selectedIndex].value;
>> //Sigo solo si hay datos
>> if((codProv == null) ||(codProv==""))
>> {
>> return;
>> }
>> //Arma URL
>> var url = "Ejercicio7.php?codProv="+ escape(codProv);
>> // Abro conexion con el servidor
>> xmlHttp.open("GET",url,true);
>> //Determino la funcion que se va a ejecutar cuando se obtiene la
>> respuesta del servidor
>> xmlHttp.onredystatechange = updatePage;
>> //Envio la peticion
>> xmlHttp.send(null);
>> //Funcion que actualiza la pagina con la respuesta
>> function updatePage()
>> {
>> if(xmlHttp.readyState == 4)
>> {
>> if(codProv == "ar")
>> for(f=0;f< argentina.length();f++)
>> {
>> var op=document.createElement('option');
>> var
>> texto=document.createTextNode(argentina[f].firstChild.nodeValue);
>> op.appendChild(texto);
>> document.getElementById("provincias").appendChild(op);
>> }
>> }
>> }
>>
>>
>>
>> function callServer()
>> {
>> //Obtiene el nombre escrito a medida que se escribe
>> var codProv =
>> document.getElementById('paises').options[document.getElementById('paises').selectedIndex].value;
>> //Sigo solo si hay datos
>> if((codProv == null) ||(codProv==""))
>> {
>> return;
>> }
>> //Arma URL
>>
>>
>> var url = "Ejercicio7.php?codProv="+ escape(codProv); ->*Esta linea que
>> haria?*
>> // Abro conexion con el servidor
>> xmlHttp.open("GET",url,true);*->aca envia la url con el codigo de la
>> provincia? Se puede enviar por POST?*
>> //Determino la funcion que se va a ejecutar cuando se obtiene la
>> respuesta del servidor
>> xmlHttp.onredystatechange = updatePage;
>> //Envio la peticion
>> xmlHttp.send(null); -> * Vi en el modulo que aca se envia "nombre=?" +
>> escape(nombre) no entendi esta parte googleando vi que tmb envian null*
>> //Funcion que actualiza la pagina con la respuesta
>> function updatePage()
>> {
>> if(xmlHttp.readyState == 4)
>> {
>> if(codProv == "ar")
>> for(f=0;f< argentina.length();f++)
>> {
>> var op=document.createElement('option');
>> var
>> texto=document.createTextNode(argentina[f].firstChild.nodeValue);
>> op.appendChild(texto);
>> document.getElementById("provincias").appendChild(op);
>>
>> *este for lo hago para agregar OPTION al select de las provincias que es
>> lo que quiero que se cargue dinamicamente tmb lo encontre en un foro*
>> }
>> }
>> }
>>
>>
>>
>> Gracias
>>
>> _______________________________________________
>> Php-avanzado mailing list
>> Php-avanzado en pato2.fi.mdp.edu.ar
>> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>>
>
>
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20130614/e102c4cf/attachment.html>
Más información sobre la lista de distribución Php-avanzado