hace una semana, Alex Arriaga dio un curso de cakePHP de 6 sesiones en la
5ta hizo un ejemplo de autocompletado donde en un input colocabas un nombre
y te daba sugerencias en una lista, cuando elegías tu opción, se ejecutaba
un accion del controlador, con los datos del input.
Quizas eso sea lo que buscas.
Se uso Jquery para esto.
el codigo del jquery es:
<script type="text/javascript">
var js = jQuery.noConflict();
(function($){
js(document).ready(function(){
//Codigo del autocomplete
js( "#name" ).autocomplete({
source: "teachers/autoComplete",
minLength: 2,
focus: function(event, ui){
js("#name").val(ui.item.Teacher.name);
return false;
},
select: function( event, ui ) {
js("#name").val(ui.item.Teacher.name);
var id = ui.item.Teacher.id;
$.ajax({
url: 'teachers/getData/'+id,
dataType: 'json',
success: function(data){
//console.log(data.Teacher.cv);
var html = '<div>';
html += '<h3>Curriculum Vitae</h3><br/>';
html += '<p>'+data.Teacher.cv+'</p>';
html += '<p><a href="teachers/view/'+id+'">Leer más</a></p>'
html += '</div>';
js("#resultados").html(html);
js("#resultados").show('blind');
}//Success
});
return false;
}
}).data("autocomplete")._renderItem = function(ul, item){
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.Teacher.name + "</a>")
.appendTo(ul);
};
js('#noticia-principal').load('html/article.html', function(){});
js('#video').load('html/video.html', function(){});
js('#podcast-rel').load('html/audio.html', function(){});
});
})(jQuery);
</script>
Si deseas, el código completo de la aplicación te la paso a tu correo.
Saludos,
*Aland Laines Calonge*
Twitter: @lainessolutions
http://about.me/aland.laines
El 24 de septiembre de 2012 10:45, Jameson Villanueva R. <
[email protected]> escribió:
> **
> Explicanos mejor el escenario para poder ayudarte mejor; ya te indicaron
> que puedes valerte de llamadas asincronas (ajax)usando javascript o talves
> usando el metodo constructor del controlador de tu vista.
>
>
> Saludos cordiales,
> Jameson Villanueva R.
> Enviado desde mi BlackBerry de Movistar
> Follow me Twitter @LuisVillanuevaR
> ------------------------------
> *From: * macesarr <[email protected]>
> *Sender: * [email protected]
> *Date: *Mon, 24 Sep 2012 08:39:13 -0700 (PDT)
> *To: *<[email protected]>
> *ReplyTo: * [email protected]
> *Subject: *Re: [CakePHP-es] Ejecutar acción directamente
>
> como?
>
> El lunes, 24 de septiembre de 2012 15:35:50 UTC, alaines escribió:
>>
>> pero eso ya lo tendrías que hacer con javascript AJAX.
>>
>> *Aland Laines Calonge*
>> Twitter: @lainessolutions
>> http://about.me/aland.laines
>>
>>
>>
>>
>> El 24 de septiembre de 2012 10:29, macesarr <[email protected]> escribió:
>>
>>> mmm mira, lo que hago es que mediante un funcion java se llene un
>>> textbox con el codigo de un producto, ahora yo capturo el valor del textbox
>>> en un variable php $id_producto y lo que quiero es UNA VEZ CAPTURADO EL ID
>>> DEL PRODUCTO SE EJECUTE EL CONTROLADOR ADD_PRODUCTO( $ID_PRODUCTO );
>>>
>>> ese es el detalle que sin hacer nada se ejecute solo.
>>>
>>> El lunes, 24 de septiembre de 2012 15:23:18 UTC, Maximiliano Alves
>>> Pinherio escribió:
>>>>
>>>> No se bien la aplicación en la que lo harías, pero lo que podes hacer
>>>> es llamar la acción en el evento load de la pagina
>>>>
>>>> El 24 de septiembre de 2012 12:20, macesarr <[email protected]>escribió:
>>>>
>>>>> Lo que deseo hacer es que, sin necesidad de hacer un click en algun
>>>>> enlace o nada, simplemente se ejecute el controlador, directamente desde
>>>>> la
>>>>> vista.
>>>>>
>>>>> Gracias
>>>>>
>>>>> --
>>>>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es"
>>>>> de Grupos de Google.
>>>>> Para ver este debate en la Web, visita https://groups.google.com/d/**
>>>>> ms**g/cakephp-es/-/7VJlwKhkTDIJ<https://groups.google.com/d/msg/cakephp-es/-/7VJlwKhkTDIJ>
>>>>> .
>>>>> Para publicar una entrada en este grupo, envía un correo electrónico a
>>>>> [email protected].
>>>>> Para anular tu suscripción a este grupo, envía un correo electrónico a
>>>>> cakephp-es+...@**googlegroups.**com
>>>>>
>>>>> Para tener acceso a más opciones, visita el grupo en
>>>>> http://groups.google.com/**group**/cakephp-es?hl=es<http://groups.google.com/group/cakephp-es?hl=es>
>>>>> .
>>>>>
>>>>
>>>> --
>>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
>>> Grupos de Google.
>>> Para ver este debate en la Web, visita https://groups.google.com/d/**
>>> msg/cakephp-es/-/CR46dhn_ocsJ<https://groups.google.com/d/msg/cakephp-es/-/CR46dhn_ocsJ>
>>> .
>>>
>>> Para publicar una entrada en este grupo, envía un correo electrónico a
>>> [email protected].
>>> Para anular tu suscripción a este grupo, envía un correo electrónico a
>>> cakephp-es+...@**googlegroups.com
>>> Para tener acceso a más opciones, visita el grupo en
>>> http://groups.google.com/**group/cakephp-es?hl=es<http://groups.google.com/group/cakephp-es?hl=es>
>>> .
>>>
>>
>> --
> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
> Grupos de Google.
> Para ver este debate en la Web, visita
> https://groups.google.com/d/msg/cakephp-es/-/KKya-82FLuwJ.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> [email protected].
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> [email protected]
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/cakephp-es?hl=es.
>
> --
> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> [email protected].
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> [email protected]
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/cakephp-es?hl=es.
>
--
Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos
de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a
[email protected].
Para anular tu suscripción a este grupo, envía un correo electrónico a
[email protected]
Para tener acceso a más opciones, visita el grupo en
http://groups.google.com/group/cakephp-es?hl=es.