2011-01-17 15 views
7

Estoy usando YUI 3.3.0 y el widget Autocompletar. Soy completamente nuevo para YUI. Aquí está la cosa. Tengo Autocompletar trabajando.YUI eventos Autocompletar, ¿cómo?

¿Cómo puedo detectar un evento disparado por Autocompletar? La documentación indica que un evento de selección se activa cuando un usuario selecciona un elemento de la lista. Quiero adjuntar una función a ese evento. ¿Cómo puedo hacer eso?

Respuesta

15

He aquí un ejemplo para el enfoque plugin, http://tivac.com/yui3/so/skladjfyhafjk_autocomplete.htm

simplemente pasan sus controladores de eventos como parte de la configuración de la primera vez que el enchufe de autocompletar en la entrada.

Y.one("#ac").plug(Y.Plugin.AutoComplete, { 
    resultHighlighter: 'phraseMatch', 
    source: ['foo', 'bar', 'baz'], 
    on : { 
     select : function(e) { 
      console.log(arguments); //TODO: REMOVE DEBUGGING 
     } 
    } 
}); 

También puede suscribirse después de que el elemento se ha conectado con el espacio de nombres que atribuye a ("AC").

Y.one("#ac").ac.on("select", function() { 
    console.log("post-plugin event subscription"); //TODO: REMOVE DEBUGGING 
}); 

Si lo está utilizando como una clase, funciona de esta manera.

var ac = new Y.AutoComplete({ 
    inputNode: '#ac', 
    source: ['foo', 'bar', 'baz'] 
}); 

ac.on("select", function() { 
    console.log("Class event subscription"); //TODO: REMOVE DEBUGGING 
});