Diferencia entre revisiones de «Ejemplo de input autocomplete con jquery ui»
De KumbiaPHP Framework Wiki
Línea 15: | Línea 15: | ||
INSERT INTO `estados` (`estado`) VALUES | INSERT INTO `estados` (`estado`) VALUES | ||
− | ('Amazonas'), | + | ('Amazonas'),('Anzoategui'),('Apure'),('aragua'),('Barinas'),('Bolívar'), |
− | ('Anzoategui'), | + | ('Carabobo'),('Cojedes'),('Delta Amacuro'),('Dist. Capital'),('Falcón'), |
− | ('Apure'), | + | ('Guarico'),('Lara'),('Mérida'),('Miranda'),('Monagas'),('Nueva Esparta'), |
− | ('aragua'), | + | ('Portuguesa'),('Sucre'),('Táchira'),('Trujillo'),('valencia'),('Vargas'), |
− | ('Barinas'), | + | ('Yaracuy'),('Zulia'); |
− | ('Bolívar'), | + | |
− | ('Carabobo'), | + | </source> |
− | ('Cojedes'), | + | |
− | ('Delta Amacuro'), | + | |
− | ('Dist. Capital'), | + | === Creando el Modelo === |
− | ('Falcón'), | + | |
− | ('Guarico'), | + | El siguiente paso es crear un modelo llamado '''Estados''' en la carpeta models del proyecto '''app/models/estados.php''': |
− | ('Lara'), | + | |
− | ('Mérida'), | + | <source lang=php> |
− | ('Miranda'), | + | <?php |
− | ('Monagas'), | + | class Estados extends ActiveRecord { |
− | ('Nueva Esparta'), | + | |
− | ('Portuguesa'), | + | public function obtener_json($estado) { |
− | ('Sucre'), | + | if ($estado != '') { |
− | ('Táchira'), | + | $res = $this->find('columns: estado', "estado like '%{$estado}%'"); |
− | ('Trujillo'), | + | if ($res) { |
− | ('valencia'), | + | // creamos el formato json para el autocomplete ej: ["aragua","caracas"] |
− | ('Vargas'), | + | foreach ($res as $estado) { |
− | ('Yaracuy'), | + | $estados[] = '"' . $estado->estado . '"'; |
− | (' | + | } |
+ | return '[' . join(',', $estados) . ']'; | ||
+ | } | ||
+ | } | ||
+ | return '["no hubo coincidencias"]'; | ||
+ | } | ||
+ | |||
+ | } | ||
</source> | </source> |
Revisión del 15:05 29 sep 2011
Descripcion
En el siguiente ejemplo se muestra una manera de crear un input con autocompletado de texto, utilizando las librerias jquery y jquery-ui. El campo de texto servirá para buscar estados en una base de datos.
Tabla a Utilizar
CREATE TABLE `estados` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`estado` varchar(20) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `estado` (`estado`)
) ENGINE=InnoDB ;
INSERT INTO `estados` (`estado`) VALUES
('Amazonas'),('Anzoategui'),('Apure'),('aragua'),('Barinas'),('Bolívar'),
('Carabobo'),('Cojedes'),('Delta Amacuro'),('Dist. Capital'),('Falcón'),
('Guarico'),('Lara'),('Mérida'),('Miranda'),('Monagas'),('Nueva Esparta'),
('Portuguesa'),('Sucre'),('Táchira'),('Trujillo'),('valencia'),('Vargas'),
('Yaracuy'),('Zulia');
Creando el Modelo
El siguiente paso es crear un modelo llamado Estados en la carpeta models del proyecto app/models/estados.php:
<?php
class Estados extends ActiveRecord {
public function obtener_json($estado) {
if ($estado != '') {
$res = $this->find('columns: estado', "estado like '%{$estado}%'");
if ($res) {
// creamos el formato json para el autocomplete ej: ["aragua","caracas"]
foreach ($res as $estado) {
$estados[] = '"' . $estado->estado . '"';
}
return '[' . join(',', $estados) . ']';
}
}
return '["no hubo coincidencias"]';
}
}