2013-12-08 15 views
10

Selectize.js pozwala przekształcać dane wejściowe w widżety za pomocą tagowania, autouzupełniania itp. Próbuję dodać tag do danych wejściowych za pomocą kodu.Dodaj element do wprowadzania programowego

Oto, co mam do tej pory.

$(function() { 
    $("#tags").selectize({ 
     create: true 
    }) 

    var selectize_tags = $("#tags")[0].selectize 
    selectize_tags.createItem("foo") 
    selectize_tags.refreshItems() 
}) 

http://jsfiddle.net/qDL37/

Niestety, „foobar” nie jest dodawany do pola wprowadzania. O ile mi wiadomo, jest to the correct way, aby to zrobić.

Czy to może być błąd w pliku selectize.js? Próbowałem przeszukiwać problemy GitHub, ale nie mogłem znaleźć czegoś takiego.

Próbowałem również odczytać kod pliku selectize.js, ale bez powodzenia.

Odpowiedz

19

Dzięki wspaniałym ludziom z #javascript @freenode jest to poprawna metoda.

$(function() { 
    $("#tags").selectize({ 
     create: true 
    }) 

    var selectize_tags = $("#tags")[0].selectize 
    selectize_tags.addOption({ 
     text:'Foo', 
     value: 'foo' 
    }); 
    selectize_tags.addItem('foo') 
    // selectize_tags.refreshItems() 
}) 

http://jsfiddle.net/qDL37/1/

+0

Mam ten sam problem, ale używam opcji 'valueField, labelField, searchField'. Czy masz na to rozwiązanie? – Fabrizio

+2

@Fabrizio Domyślam się, że zmieniłem 'text' i' value' keys na wartości, które określiłeś [dla 'labelField' i' valueField'] (https://github.com/brianreavis/selectize.js/blob/master /docs/usage.md#data_searching). – daGrevis

+0

spędził 2 godziny, szukając tego, ten temat był na dole wyników wyszukiwania Google Search. dzięki, to działa !!! – Skyzer

Powiązane problemy