Cargar datos en form

Tengo un problema, tengo un formulario con un select. Cuando seleccione una opción del select (con el método onchage) tendría que cargar unos textos con los datos correspondientes a la opción seleccionada. Para ello tendría que saber la opción seleccionada que se haría con javascript(según creo) y luego ejecutar php para acceder a la base de datos pero pasándole la opción seleccionada. Y después según lo que obtengo de la sentencias sql en php cargar los text del formulario.
No se muy bien como hacerlo, ahora he probado esto y claro no funciona:
 <select name="permiso_select" size="1" onFocus="nuevo_permiso('tasas','','','');" onChange="<?php $rs1[]=consultar(document.permiso.permiso_select.options[permiso.permiso_select.selectedIndex].value);?>">
Me imagino que es una burrada. Espero que me puedas ayudar.ah!!!Lo imprimo con php
<input type="text" name="matricula" maxlength="10" size="10" value="<?php echo $rs1[1];?>">
Gracias

1 respuesta

Respuesta
1
Lo que tendrías que hacer es en el onChange del select llamar a una función javascript, que a su vez haga una llamada ajax a una página php que tenga el código de la consulta, y presente el resultado. Luego, el resultado de la llamada ajax la metes en un div, por ejemplo. Para ajax yo uso jquery, como ya lo expliqué en este post. En resumen, sería algo así:
1) Mete esta linea en tu head:
<script language="javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
2) dale un id al elemento donde quieres cargar el resultado de la consulta:
<div id="contenedorConsulta"></div>
3) llama a una función en el onChange() del select, pasando el valor actual del select
<select name="permiso_select" size="1" onChange="consultaPermiso(this.value)">
4) implementa la función javascript, usando dentro jquery:
function consultaPermiso(valorPermiso){
$("#contenedorConsulta").load("consultaPermiso.php?idpermiso=" + valorPermiso);
}
5) Construye consultaPermiso.php, usando el parámetro. Como no tengo ni idea de php, esta parte te la tendrás que currar tú.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas