2011-01-17 5 views
7

J'utilise YUI 3.3.0 et le widget de saisie semi-automatique. Je suis entièrement nouveau à YUI. Voici la chose. J'ai AutoComplete fonctionnant.Événements YUI AutoComplete, comment?

Comment attraper un événement déclenché par saisie semi-automatique? La documentation indique qu'un événement select est déclenché lorsqu'un utilisateur sélectionne un élément de la liste. Je veux attacher une fonction à cet événement. Comment je fais ça?

Répondre

15

Voici un exemple pour l'approche plugin, http://tivac.com/yui3/so/skladjfyhafjk_autocomplete.htm

Il suffit de passer vos gestionnaires d'événements dans le cadre de la configuration lors de la première saisie semi-automatique de fiche dans l'entrée.

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

Vous pouvez également vous abonner après l'élément a été branché en utilisant l'espace de noms qu'il attache à (« AC »).

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

Si vous l'utilisez en tant que classe, cela fonctionne comme ceci.

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

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