Foros del Web » Programando para Internet » Javascript » Frameworks JS »

combos

Estas en el tema de combos en el foro de Frameworks JS en Foros del Web. hola , revise en el foro algunos codigo sobre los combos en ajax, he intentado con 2 combos (una de categoria y otra de subcategoria ...
  #1 (permalink)  
Antiguo 05/12/2008, 12:53
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 11 meses
Puntos: 9
combos

hola , revise en el foro algunos codigo sobre los combos en ajax, he intentado con 2 combos (una de categoria y otra de subcategoria donde esta el id_categoria) pero no me carga el segundo y es porque no entiendo bien la parte del ajax:

Asi cargo el primer combo

Código PHP:
<?php
//cargar categorias  
$datos=mysql_query("select * from categoria");

echo 
"<select name='lcategoria' id='lcategoria' class='cboFormsPanel' onChange='cargarContenido(this.id)'>";
echo 
"<option value='0'>Selecciona Categoria...</option>";
while(
$fila=mysql_fetch_row($datos)){
   echo 
"<option value='".$fila[0]."'>".$fila[1]."</option>";
}
?>
Y este es mi funcion ajax

Código:
function cargarContenido(){
	
	var categoria=document.getElementById('lcategoria');
	var subcategoria=document.getElementById('lsubcategoria');
	seleccionado=categoria.options[categoria.selectedIndex].value;
		
	//CARGA COMBOBOX SUBCATEGORIA
	if (seleccionado>0)
	{
		ajax=Ajax();
		ajax.open("POST","carga.php",true);
		ajax.onreadystatechange=function() {
			if(ajax.readyState==1){
				subcategoria.disabled=false;	
			}
			if (ajax.readyState==4) {
				ajax.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
            	subcategoria.innerHTML = ajax.responseText;
	 		}
		}
	}
	else{
		subcategoria.disabled=true;	
	}
	ajax.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" ); //establecemos request
    ajax.send("subcategoria_id"+seleccionado);
}
Ahora con lo que tengo al final debo pasar ese valor a la pagina carga.php (ahi creo que es el error)

Código PHP:
//Conexion a la Base de datos
include ('clase_mantenimiento.php');
$clase=new clasePrincipal();
$c=$clase->conectar("localhost","db_ccccc","root",".");

$cat=$_POST["categoria_id"];
$consulta=mysql_query("select * from subcategoria where categoria_id='$cat'");

echo 
"<select name='lsubcategoria' id='lsubcategoria' class='cboFormsPanel' onChange='cargarContenido(this.id)'>";
echo 
"<option value='0'>Seleccionar Subcategoria...</option>";
while(
$fila=mysql_fetch_row($datos)){
 echo 
"<option value='".$fila[0]."'>".$fila[1]."</option>";
}
?> 
Ahi va mi duda, que es lo que debo capturar o mandar a la pagina carga.php? el index del primer combo o el id del segundo combo?
y otra duda, solo puedo hacer una funcion ajax para que solo haga esa carga del combo y luego otra funcion ajax para guardar todo los datos del formulario? o al momento de mandar esos datos a carga.php ya debo hacer el mantenimiento?

espero me ayuden gracias

Última edición por cesarpunk; 05/12/2008 a las 13:06
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 03:06.