Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/02/2013, 09:28
Avatar de satjaen
satjaen
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Llamar a una funcion al escribir en un input.

Hola alguien por favor me puede poner un ejemplo de una llamada a una funcion al ir escribiendo en un input para una busqueda de datos MySql.
Lo tengo hecho con un boton de busqueda pero no se como se haria sin pulsar dicho boton.




Este es el boton:
Código PHP:
Ver original
  1. <button type="button" id="btnfiltrar" name="btnfiltrar" style="cursor:pointer;">
  2.   <img src="imagenes_menu/boton_buscar.jpg" width="100%"/>
  3. </button>

Esta es parte de la funcion:

Código Javascript:
Ver original
  1. function filtrar()
  2.  
  3. {
  4.  
  5. $.ajax({
  6. data: $("#frm_filtro").serialize()+ordenar,
  7. type: "POST",
  8. dataType: "json",
  9. url: "ajax.php?action=listar",
  10. beforeSend:function(){
  11. $('.carga1').css('display','block');
  12. $('.carga1').html("<img src='imagenes_menu/ajax-loader4.gif' align='center' /><br />Cargando...");
  13.  },  
  14.  complete: function() {
  15.  $(".carga1").show();
  16.  
  17.  $(".carga1").hide();
  18.  
  19.  },
  20.  success: function(data){
  21.  var html_user ='' ;
  22.  if(data.length > 0){
  23.  $.each(data, function(i,item){

Y el ajax:
Código PHP:
Ver original
  1. <?php  
  2. include("Connections/conexion.php");
  3. if ($_GET["action"] == "listar")
  4. {
  5.     // valores recibidos por POST
  6.     $vte = $_POST['telefonos'];
  7.     $ape = $_POST['apellidos'];
  8.     $name = $_POST['name'];
  9.     $dni = $_POST['dni'];
  10.     $calle = $_POST['calle'];
  11.    
  12. if ( ! empty($vte)) {
  13.     $sql = "SELECT U.id_aviso,U.telefonos,U.name,U.apellidos,D.localidad,D.calle
  14. FROM clientes U,dir_clientes D
  15. WHERE  U.id_aviso=D.id_aviso AND U.telefonos='$vte' AND D.calle != ''";
  16. }
  17.     // Ordenar por
  18.     $vorder = $_POST['orderby'];
  19.      
  20.     if($vorder != ''){
  21.         $sql .= " ORDER BY ".$vorder;
  22.     }
  23.      
  24.     $query = mysql_query($sql);
  25. if (mysql_num_rows($query) > 0) {
  26.          
  27.   $datos = array();
  28.      
  29.     while($row = mysql_fetch_array($query))
  30.     {
  31.         $datos[] = array(
  32.             'id_aviso'          => $row['id_aviso'],
  33.             'telefonos'          => $row['telefonos'],
  34.             'name'      => utf8_encode($row['name']),
  35.             'apellidos'       => utf8_encode($row['apellidos']),
  36.             'calle'       => utf8_encode($row['calle']),
  37.             'localidad'        => utf8_encode($row['localidad'])
  38.            
  39.         );
  40.     }
  41.     // convertimos el array de datos a formato json
  42.     echo json_encode($datos);
  43. /* Tienes resultados. */

Gracias


Edito: Quiero decir que al ir escribiendo datos en el input se vayan viendo los resultados en un div.

Última edición por satjaen; 20/02/2013 a las 10:27