Código HTML:
<script language="javascript" src="js/jquery-1.2.6.min.js"></script> <script language="javascript"> $(document).ready(function(){ $("#marca").change(function () { $("#marca option:selected").each(function () { elegido=$(this).val(); $.post("modelos.php", { elegido: elegido }, function(data){ $("#modelo").html(data); }); }); }) }); </script>
Código HTML:
<p>Marca: <select name="marca" id="marca"> <option value="1">Renault</option> <option value="2">Seat</option> <option value="3">Peugeot</option> </select></p> <p>Modelo: <select name="modelo" id="modelo"> <option value="1">4</option> <option value="2">5</option> <option value="3">7</option> <option value="4">21</option> <option value="5">Scennic</option> <option value="6">Traffic</option> </select></p>
modelos.php
Código PHP:
<?php
$options="";
if ($_POST["elegido"]==1) {
$options= '
<option value="1">4</option>
<option value="2">5</option>
<option value="3">7</option>
<option value="4">21</option>
<option value="5">Scennic</option>
<option value="6">Traffic</option>
';
}
if ($_POST["elegido"]==2) {
$options= '
<option value="1">Ibiza</option>
<option value="2">Toledo</option>
<option value="3">Cordoba</option>
<option value="4">Arosa</option>
';
}
if ($_POST["elegido"]==3) {
$options= '
<option value="1">106</option>
<option value="2">206</option>
<option value="3">306</option>
';
}
echo $options;
?>
Lo probé y funciona perfecto, pero me gustaría hacer en la parte de modelos.php sea variable.
Hice algo así, pero mo logro levantar los valores correspondientes
Código PHP:
<?php
$conn = new conection();
$rs = new RecordSet($conn);
$sql="SELECT `subcategoria`.`categoria`, `subcategoria`.`titulo`, `categoria`.`titulo`
FROM `categoria`, `subcategoria` WHERE `subcategoria`.`categoria` = `categoria`=$categoria->id";
$sub = $rs->get_object($sql);
$options="";
if ($_POST["elegido"]==$sub) {
$options= ?> '
<?php
foreach($rs as $valor){?>
<option value="<?php echo $valor->id ?>"><?php echo $valor->titulo ?></option>
<?php
}}?>
' <?php
}
echo $options;
?>