select2 noresult поймать ввод

  1. Как мне перехватить ввод пользователя и передать его в текстовое поле создания.

Текущий код показывает undefined.

  1. И новый термин тоже не добавлен в список, алерт вроде не работает.

    $ .getScript ('// cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.full.js',function () {

    $ ("# mySel"). select2 ({width: '240px', allowClear: true, "language": {"noResults": function (term) {/ * настроить вывод отсутствия совпадений * / return "Create"}} ,

    escapeMarkup: function (markup) {
        return markup;
    }
    

    }) .parent (). find ('. select2-with-searchbox'). on ('click', '# addNew', function () {/ * добавить новый термин * / var newTerm = $ ('# newTerm ') .val (); alert (' добавление: '+ newTerm); $ (' '+ newTerm +' '). appendTo (' # mySel '); $ (' # mySel '). select2 (' val ', newTerm ); // выбираем новый термин $ ("# mySel"). select2 ('close'); // закрываем раскрывающийся список})

    });

http://www.codeply.com/go/LxasHWd0rd


person Shiro    schedule 18.09.2015    source источник


Ответы (1)


Согласно документации select2, вы можете использовать параметр «теги» для достижения того, что вы пытаетесь делать. Select2 уже делает это за вас:

«Если параметр тегов передается в Select2, если пользователь вводит в поле поиска что-либо, чего еще не существует, оно будет отображаться вверху, и пользователь сможет его выбрать».

person alcfeoh    schedule 24.09.2015