2011-01-17 19 views
7

YUI 3.3.0 ve Otomatik Tamamlama küçük aracı kullanıyorum. YUI'ye tamamen yeniim. İşte buradaki şey. Otomatik Tamamlama çalışmam var.YUI Otomatik Tamamlama olayları, nasıl yapılır?

Otomatik Tamamlama tarafından tetiklenen bir olayı nasıl yakalarım? Belge, bir kullanıcı listeden bir öğe seçtiğinde bir seçim olayının tetiklendiğini belirtir. Bu etkinliğe bir işlev eklemek istiyorum. Bunu nasıl yaparım?

cevap

15

İşte

http://tivac.com/yui3/so/skladjfyhafjk_autocomplete.htm Basitçe ilk ne zaman fiş otomatik tamamlama girişine yapılandırma kapsamında etkinlik işleyicileri geçmesi, eklenti yaklaşımı için bir örnek verilmiştir. Ayrıca öğeden sonra abone olabilirsiniz

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

o ("ac") verdiği ad kullanarak takılı edilmiştir.

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

Bunu bir sınıf olarak kullanıyorsanız, bu şekilde çalışır.

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

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