Esta pregunta fue respondida para el método live(), pero el método live() ha quedado obsoleto a partir de jQuery 1.7 y reemplazado por el método .on() y esta respuesta no funciona para on().¿Cómo se puede vincular la autocompletación de jQuery UI con .on()?
aquí es donde se fue respondida antes: Bind jQuery UI autocomplete using .live()
Alguien sabe cómo hacer la misma cosa con el()?
Si cambia la sintaxis a algo así como
$(document).on("keydown.autocomplete",[selector],function(){...});
de
$([selector]).live("keydown.autocomplete",function(){...});
En cierto modo se trabaja, sino que interactúa con los eventos internos de autocompletar de una manera extraña. Con live(), si usa el evento select y accede al event.target, le proporciona la identificación del elemento de entrada. Si usa on(), le da el id del menú desplegable "ui-active-menuitem". Algo como esto:
$(".selector").autocomplete({
select: function(event, ui) {
console.log(event.target.id);
}
});
Pero - si se utiliza el evento "abierta", que le dará el id Busco - no sólo en el momento adecuado (lo necesito después de que se ha seleccionado). En este punto, estoy usando una solución de agarrar el ID del elemento de entrada en la función de evento abierto, almacenarlo en un campo oculto, y luego acceder a él en el método de selección donde lo necesito.
¿Se puede publicar un ejemplo de trabajo en [jsFiddle] (http://jsfiddle.net)? He [respondido] (http://stackoverflow.com/a/9531031/520779) una pregunta que, desde mi entendimiento, es similar a su caso, pero no estoy seguro de interpretar su pregunta correctamente (es decir, lo que estás tratando de lograr). – mgibsonbr
Me llevará algún tiempo extraer mi código de la aplicación más grande, pero puedo intentarlo. Para proporcionar más contexto, tengo un formulario con un campo de entrada con autocompletar ejecutándose en él. Necesito usar la función live/on para permitir que se agreguen campos de entrada adicionales dinámicamente haciendo clic en el botón Agregar, con el mismo autocompletado ejecutándose en ellos. – paul