Edición de «AJAX»
De KumbiaPHP Framework Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.
Revisión actual | Tu texto | ||
Línea 1: | Línea 1: | ||
− | + | ¿Como usar AJAX en Kumbia? | |
Kumbia posee soporte para funciones AJAX con el framework Prototype y también sin él. | Kumbia posee soporte para funciones AJAX con el framework Prototype y también sin él. | ||
Recordemos que prototype (http://prototype.conio.net) está incluida por defecto al igual | Recordemos que prototype (http://prototype.conio.net) está incluida por defecto al igual | ||
que las funciones drag-and-drop (arrastrar y soltar), effects (efectos) y controls | que las funciones drag-and-drop (arrastrar y soltar), effects (efectos) y controls | ||
(controles) de Script.aculo.us. | (controles) de Script.aculo.us. | ||
− | + | El soporte para estas librerías, está por defecto en la línea que dice: <? | |
− | El soporte para estas librerías, está por defecto en la línea que dice: | + | kumbia_use_effects() ?> en views/index.phtml esta función incluye los documentos |
− | < | + | javascripts necesarios para usarlas. |
− | + | 43.4 link_to_remote | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Permite hacer un llamado sencillo mediante AJAX que solicita un fragmento HTML y lo | Permite hacer un llamado sencillo mediante AJAX que solicita un fragmento HTML y lo | ||
actualiza en un contenedor (div, span, td, etc) del documento actual. | actualiza en un contenedor (div, span, td, etc) del documento actual. | ||
− | + | 1. <?php echo link_to_remote("Cargar algo con AJAX", "update: midiv", "action: | |
− | <?php | + | saludo/hola") ?> |
− | echo link_to_remote("Cargar algo con AJAX", "update: midiv", "action:saludo/hola") ?> | + | 2. |
− | <div id="midiv">Este texto será actualizado</div | + | 3. <div id="midiv">Este texto será actualizado</div> |
− | |||
La función link_to_remote generalmente toma 3 parámetros: | La función link_to_remote generalmente toma 3 parámetros: | ||
− | + | 1. El Texto del enlace | |
− | + | 2. El id del objeto HTML que se va a actualizar en este caso midiv. | |
− | + | 3. La acción de la cual se obtendrán la información para actualizar. | |
Cuando el usuario hace clic sobre el vinculo la acción hola en el controlador saludo será | Cuando el usuario hace clic sobre el vinculo la acción hola en el controlador saludo será | ||
invocada en segundo plano y cualquier información obtenida será reemplazada en el div. | invocada en segundo plano y cualquier información obtenida será reemplazada en el div. | ||
El controlador ‘controllers/saludo’ tiene una acción llamada hola: | El controlador ‘controllers/saludo’ tiene una acción llamada hola: | ||
− | + | 1. <?php | |
− | <?php | + | 2. class SaludoController extends ApplicationController { |
− | class SaludoController extends ApplicationController { | + | 3. function hola(){ |
− | + | 4. #Indica que el resultado sera solo una parte de la vista actual | |
− | #Indica que el resultado sera solo una parte de la vista actual | + | 5. $this>set_response('view'); |
− | $ | + | 6. }//fin del metodo |
− | + | 7. }//fin de la clase | |
− | }//fin de la clase | + | 8. ?> |
− | |||
La implementación vacía del método indica que no hay lógica para esta acción sin | La implementación vacía del método indica que no hay lógica para esta acción sin | ||
embargo Kumbia carga automáticamente la vista con el nombre hola.phtml en | embargo Kumbia carga automáticamente la vista con el nombre hola.phtml en | ||
views/saludo/ que contiene lo siguiente: | views/saludo/ que contiene lo siguiente: | ||
− | + | 1. <h2>Esto es Kumbia con AJAX</h2><?php echo time() ?> | |
− | <h2>Esto es Kumbia con AJAX</h2> | + | Al probarlo el texto ‘Esto es Kumbia con AJAX’ y el timestamp actual aparecerán |
− | <?php echo time() ? | ||
− | |||
− | Al probarlo el texto | ||
como por arte de magia en el div indicado. | como por arte de magia en el div indicado. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |