Foros del Web » Programando para Internet » PHP »

Combos Anidados

Estas en el tema de Combos Anidados en el foro de PHP en Foros del Web. Buenos dias amigos, tengo una consulta referente a PHP,JavaScript y HTML, tengo un pequeño formulario con tres combo, dos de ellos son anidados, el primero ...
  #1 (permalink)  
Antiguo 22/05/2010, 08:10
 
Fecha de Ingreso: marzo-2010
Mensajes: 6
Antigüedad: 10 años, 2 meses
Puntos: 0
Combos Anidados

Buenos dias amigos, tengo una consulta referente a PHP,JavaScript y HTML, tengo un pequeño formulario con tres combo, dos de ellos son anidados, el primero que contiene los objetos padre lo cargo normalmente pero el segundo por medio de javascript construyo algo parecido a ajax codigo:
<div>
<select name="cmbTipoObjetos" id="cmbTipoObjetos" style="width:373px;" onchange="javascript:cargarCombo('detalleobjeto.ph p', 'cmbTipoObjetos', 'DivDetObjetos',28)">
<option value=" ">--Seleccione una Opcion--</option>
<?php

foreach($ArrCmbTipoObjetos as $row)
{
?>
<option value="<?php echo $row['IdTipo']; ?>"><?php echo $row['Descripcion']; ?></option>
<?php
}
?>
</select>
</div>
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td><strong>Objeto</strong></td>
<td align="left" class="tagTd">&nbsp;
<div id="DivDetObjetos" >
<select name="cmbDetObjetos" id="cmbDetObjetos" style="width:373px;">
<option value="">--Seleccione un tipo de objeto--</option>
</select>
</div>

ese segundo div se carga con el evento onchange del primer combo con este codigo :

JavaScript:
var peticion = false;
var testPasado = false;
try {
peticion = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
peticion = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
peticion = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
peticion = false;
}
}
}
if (!peticion)
alert("ERROR AL INICIALIZAR!");


function cargarCombo (url, comboAnterior, element_id,parametro) {
//Obtenemos el contenido del div
//donde se cargaran los resultados
var element = document.getElementById(element_id);
//Obtenemos el valor seleccionado del combo anterior
var valordepende = document.getElementById(comboAnterior)
var x = valordepende.value
//construimos la url definitiva
//pasando como parametro el valor seleccionado
var fragment_url = url+'?Id='+x+'&slc='+parametro;
element.innerHTML = '<img src="../../images/loading.gif" />';
//abrimos la url
peticion.open("GET", fragment_url);
peticion.onreadystatechange = function() {
if (peticion.readyState == 4) {
//escribimos la respuesta
element.innerHTML = peticion.responseText;
}
}
peticion.send(null);
}
</script>

el me lo carga y me lo pinta bie con los datos que necesito y todo, ahora, el formulario es POST cuando ejecuto el submit de formulario me doy cuenta de que el combo lo carga bien pero le doy ver codigo fuente y no veo el div que acavo de cargar, entonces no puedo capturar el valor del segundo combo porque no aparece
  #2 (permalink)  
Antiguo 25/05/2010, 07:22
fabo27631
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Combos Anidados

El contenido del primer combo lo capturas bien?

si es asi prueba capturar el del segundo por medio del name del select, creo que el que tienes es "cmbDetObjetos".

Etiquetas: anidados, combos
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:56.