Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/10/2010, 13:32
Stackado
 
Fecha de Ingreso: junio-2009
Mensajes: 75
Antigüedad: 14 años, 10 meses
Puntos: 0
Problema con JQuery UI Autocomplete

Hola,

Que tal amigos estoy de regreso, esta vez con una duda respecto al Autocomplete del JQuery UI, al parecer no logro hacer jalar la función o la captura (aun no estoy seguro del problema), recurro a ustedes para lograr aclarar mis dudas.

Mi codigo es el siguiente, mando llamar pues las dependencias del Autocomplete:

Código Javascript:
Ver original
  1. <link type="text/css" rel="stylesheet" href="jquery-ui-1.8.5.custom/development-bundle/demos/demos.css"/>
  2. <link type="text/css" rel="stylesheet" href="jquery-ui-1.8.5.custom/development-bundle/themes/base/jquery.ui.all.css"/>
  3. <script type="text/javascript" src="jquery-ui-1.8.5.custom/js/jquery-1.4.2.min.js"></script>
  4. <script type="text/javascript" src="jquery-ui-1.8.5.custom/js/jquery-ui-1.8.5.custom.min.js"></script>

Despues creo lo que es la función para mandar llamar el autocomplete, el cual debe ejecutarse al empezar a escribir los primeros 2 caracteres en un input del tipo text:

Código Javascript:
Ver original
  1. $(function() {
  2.     /*-------------------------------------------------------------------------------*/
  3.     $( "#depen" ).autocomplete({
  4.         source: "prueba2.php",
  5.         minLength: 2,
  6.         /*
  7.         focus: function( event, ui ) {
  8.             $(this).val( $('<textarea/>').html(ui.item.value).val() ); <!-- para quitar htmlentities y poner caracteres normales. ejemplo &aacute; lo convierte a á. -->
  9.             return false;
  10.         };
  11.           */
  12.    
  13.     }).data( "autocomplete" )._renderItem = function( ul, item ) {
  14.         return $( "<li></li>" )
  15.             .data( "item.autocomplete", item )
  16.             .append( "<a>" + $('<textarea/>').html(item.value).val() + "</a>" ) <!-- selecciona el nombre de la institucion -->
  17.             .appendTo( ul );
  18.     };
  19.     /*-------------------------------------------------------------------------------*/
  20.     });

Este es el archivo source2.php

Código PHP:
Ver original
  1. <?php
  2. $suggest = $_GET{depen}; /*Opcion 1*/
  3. // Conexion al servidor y seleccion de base de datos
  4. $conect = mysql_connect('localhost', 'root', 'root');
  5. if (!$conect) {
  6.     die('Imposible conectar al servidor: ' . mysql_error());
  7. }
  8.  
  9. //seleccion de la BD
  10. mysql_select_db('pruebadigeset',$conect) or die('No pudo seleccionarse la BD.');
  11.  
  12. // Realizar una consulta SQL
  13. $consulta  = "SELECT * FROM catalogo_de_dependencias WHERE dependencia LIKE '%$suggest%'" ; /*Opcion 2*/
  14.  
  15. $resultado = mysql_query($consulta) or die('La consulta fall&oacute;: ' . mysql_error());
  16.  
  17. // Impresion de resultados en HTML
  18. echo "<table>\n";
  19. while ($linea = mysql_fetch_array($resultado, MYSQL_ASSOC)) {
  20.     echo "\t<tr>\n";
  21.     foreach ($linea as $valor_col) {
  22.         echo "\t\t<td>$valor_col</td>\n";
  23.     }
  24.     echo "\t</tr>\n";
  25. }
  26. echo "</table>\n";
  27.  
  28. // Liberar conjunto de resultados
  29. mysql_free_result($resultado);
  30.  
  31. // Cerrar la conexion
  32. mysql_close($conect);
  33.    
  34. echo json_encode($valor_col); /*Opcion 3*/
  35.    
  36. //echo array_to_json($istituciones);
  37.  
  38. ?>


Para mandar llamar la funcion hago lo siguiente:

Código HTML:
Ver original
  1. <!-- Autocomplete -->
  2.             Dependencia
  3.             &nbsp;
  4.             <input type="text" name="depen" size="90" id="depen"/>
  5.             <!-- Autocomplete -->

No logro encontrar el problema, los comentarios de source2.php que tengo comop opcion 1 2 y 3 son los que considero que podrian ser el error, agradeceria un poco de ayuda.

Saludos.

Última edición por Stackado; 13/10/2010 a las 13:45