AJAX - cargar cajas de texto a partir de un combo

 
Vista:

cargar cajas de texto a partir de un combo

Publicado por sandra (6 intervenciones) el 20/12/2006 15:19:38
Hola, tengo el siguiente problema:
Tengo un combo, al seleccionar una opción se tienen que cargar dos cajas de texto.
El tema es que el responseText me lo muestra bien cuando hago un alert, pero cuando lo quiero meter dentro de las cajas, me muestra undefined.

Este es una parte del archivo que tiene el Ajax

<script>

function cargar_datos(){
var nro_paciente = document.getElementById('paciente').value;
var cadena = 'arma_xml2.php?opcion='+nro_paciente+'&cache='+Math.random();
var com = verificar_navegador();//el desarrollo de esta funcion no lo copié acá para q no sea tan targo el código, pero anda bien
com.open('GET',cadena,true);
com.onreadystatechange = function(){
if(com.readyState==4){
//alert(com.responseText);//hasta aca lo hace bien

try{
var doc = new ActiveXObject("Microsoft.XMLDOM"); //uso ie
}
catch(e){
var doc = new ActiveXObject("Msxml.DOMDocument");
}

doc.loadXML(com.responseText);
//lleno las cajas de texto
form.obra.value = doc.getElementsByTagName('obra').text; form.plan.value = doc.getElementsByTagName('plan').text;
}//fin del if que pregunta si es == 4
}//fin de la function
com.send(null);
}//fin de la función cargar_datos
<script>

este es el formulario:
<form action="" name="form" method="post">
<table align="center">
<tr>
<td align="right"> Pacientes:</td>
<td>
<select name="paciente" id="paciente" onChange="cargar_datos()">
<option value="0">Elegir Paciente</option>
</select>
</td>
</tr>
<tr>
<td align="right">Obra Social:</td>
<td>
<input type="text" name="obra" id="obra">
</td>
</tr>
<tr>
<td align="right">Plan:</td>
<td>
<input type="text" name="plan" id="plan">
</td>
</tr>
</table>
</form>

Y este es el archivo que arma el xml (arma_xml2.php)

include("conexion.php");
$sql = "SELECT plan, obra_social FROM pacientes WHERE codigo = '$_GET[opcion]'";
$rs = mysql_query($sql, $conn);
echo '<?xml version="1.0" encoding="iso-8859-1"?>';
echo '<lista>';
while($row = mysql_fetch_assoc($rs)){
echo '<datos>';
echo "<obra>".$row['obra_social']."</obra>";
echo "<plan>".$row['plan']."</plan>";
echo '</datos>';
}
echo '</lista>';
?>

No se si está bien el código de donde lleno las cajas de texto.
Bueno, espero haber sido clara y que me puedan ayudar.
Muchas gracias!!
Sandra
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:cargar cajas de texto a partir de un combo

Publicado por Aritz (32 intervenciones) el 20/12/2006 16:36:18
Puedes porobar con la siguiente expresión, que es la que yo uso para meter valor en un div, espero que en tu caso sirva
en vez de:
form.obra.value = doc.getElementsByTagName('obra').text
usa
form.obra.value=doc.getElementsByTagName('obra')[0].firstChild.data

Y sino, intenta dandole un id al cuadro de texto (no se si funcionará) y hacer

id = document.getElementById('idTextBox');
id.innerHTML = doc.getElementsByTagName('obra')[0].firstChild.data *o tu frase

Vuelvo a reptir que no se si funcionará, pero a mi trabajando con div esto me funciona.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cargar cajas de texto a partir de un combo

Publicado por sandra (6 intervenciones) el 20/12/2006 16:56:44
Muchas gracias, lo probé pero no funciona.....:-(
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 30
Ha mantenido su posición en AJAX (en relación al último mes)
Gráfica de AJAX

RE:cargar cajas de texto a partir de un combo

Publicado por Yamil Bracho (184 intervenciones) el 20/12/2006 19:01:37
Te recomiendo ampliamente que uses uan biblioteca para AJAX, como por ejemplo ProtoType. Veras que te facilita mucho las cosas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cargar cajas de texto a partir de un combo

Publicado por sandra (6 intervenciones) el 20/12/2006 19:46:45
Me la bajo de algún sitio en especial? Gracias por la info!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cargar cajas de texto a partir de un combo

Publicado por Aritz (32 intervenciones) el 21/12/2006 10:18:30
La libreria Prototype te la puedes bajar desde:
prototype.conio.net
Un manual muy completo(en inglés) lo tienes en esta página
www.sergiopereira.com/articles/prototype.js.html

La verdad es que hay muy poca información sobre esta librería.

Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cargar cajas de texto a partir de un combo

Publicado por sandra (6 intervenciones) el 21/12/2006 13:14:38
Muchas gracias!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

YA ESTÁ!!! ERA ESTO NADA MÁS

Publicado por sandra (6 intervenciones) el 21/12/2006 18:03:22
form.obra.value = doc.getElementsByTagName('obra').item(0).text;
form.plan.value = doc.getElementsByTagName('plan').item(0).text;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

hola q tal

Publicado por jose luis (1 intervención) el 30/01/2007 20:28:30
Necesito preguntarles como hacer para recargar 3 cajas de texto a paritr de un combo...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:YA ESTÁ!!! ERA ESTO NADA MÁS

Publicado por susan (6 intervenciones) el 21/05/2007 21:47:56
hola sandra ojala puedas ayudarme soy nueva en lo de ajax, en fin quiero saber como hago, cuando selecciono un tipo de documento en un select me genere un numero correlativo en un input text lo puedo hacer con ajax. como ayudame porfis te lo agradecere.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cargar cajas de texto a partir de un combo

Publicado por susan (4 intervenciones) el 21/05/2007 21:43:12
hola mira veo que se soluciono tu problema y quisiera que me ayudes lo mio es que necesito: que al seleccionar un tipo de documento me genere el correlativo (numero=001)de ese tipo de documento en un input text entonces quisiera saber como hacer. e estado chequeando tu ejemplo quiero saber si me funcionaria o no.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar