2015-09-04 3 views
1

Я использую select2.full.jsВыбор2 4.0.0 каскадных выпадающие

Я не использую никакого require.js, чтобы помочь мне вытащить модули, я в основном использую мои ноу-хау от всего, что я узнал, in v3.5

Я пробовал бесчисленное количество часов, обертывая вокруг себя голову, но я понятия не имею, как сделать каскадные выпадающие списки ajax.

Пример: вы загружаете страницу, есть первый раскрывающийся список select2, который автоматически извлекает данные с помощью ajax (вы ничего не вводите .. данные находятся на загрузке страницы с сервера), выбрано значение по умолчанию , Поскольку это значение по умолчанию выбрано, второй снимок select2 будет использовать это значение, чтобы сделать вызов ajax для заполнения своего собственного списка. Теперь, когда я выбираю другое значение в первом раскрывающемся списке select2, второе раскрывающееся меню select2 будет отражать эти изменения с новым набором данных.

Что я могу придумать, было 3 выпадающих меню, которые вы можете заполнить при загрузке страницы, но когда вы делаете какой-либо запрос ajax, выпадающие данные не изменяются.

Прошло два года с тех пор, как я использовал select2, и библиотека постоянно менялась, документация менялась, и я нахожусь на своем пути этой библиотекой. Но я чувствую, что обращается к нему с помощью поддержки бутстрапа и внешнего вида. Функциональность, способ реализовать вещи, документация просто невероятно ужасна.

У меня нет никакого полезного кода вообще, я потянул, подключился, модифицировал и т. Д., И теперь я двигаюсь к своим волосам и зубам.

ЛЮБОЙ полезный пример для этого был бы замечательным.

+0

Вы пытаетесь сделать это в Select2 4.0.0 или 3.5.4? –

+0

select2 4.0.0, но я понял это. Я отправляю решение .... – sksallaj

ответ

0

Просто нашел мой ответ ..

Я использовал шаблонного:

<select id="test"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
</select> 

к:

data = [{id: "1", text: "1"}, {id: "2", text: "2"}]; 

<input id="test" type="hidden" /> 

и просто держал свой JQuery на выбор2 то же самое. Так что это было просто изменение в шаблонах от того, что это решило.

Однако единственным недостатком этого является то, что когда вы обновляете новые данные из этих выпадающих списков, выделенное (выбранное значение) всегда является первым элементом в выпадающем списке, хотя это не выбранное значение, показанное в выпадающий список.

0

Вот небольшой фрагмент кода, чтобы сделать Выбор2 (v4.x) каскадные раскрывающийся - https://gist.github.com/ajaxray/187e7c9a00666a7ffff52a8a69b8bf31

Используя этот модуль, опции в списке Выбор2 будет загружен/обновляется AJAX на основе выбора другого списка ВЫБ.2 коробка.

Пример использования -

new Select2Cascade($('#province'), $('#district'), 'path/to/geocode', {type:"district", parent_id: ''});

выбранное значение родителя Select2 ListBox будет установлен в parent_id объекта данных перед Ajax вызова.

+0

Как вы передаете массив объектов JSON для дочернего выпадающего списка? https: // stackoverflow.ком/вопросы/44281109/как к модификации-Выбор2-каскадного выпадающий к Accept-массив-оф-объектов-JSON – Haris

Смежные вопросы