предварительный выбор полей с ajax для select2 - PullRequest
1 голос
/ 24 января 2020

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

Я вызываю функцию pre_select() для каждого <select>. Когда я смотрю на код, все в порядке, но ярлык на странице показывает мне ID вместо myTitle. После отправки формы данные тоже в порядке! Мне нужна только правильная метка ...

function pre_select(pre_id, query_id) { //my ID of selection, the query
    var mySelect = $('#form_my_id'+pre_id);
    $.ajax({
        type: 'GET',
        dataType:'json',
        url: '?search&id='+query_id
    }).then(function (data) {
        var option = new Option(data.myTitle, data.id, true, true);
        mySelect.append(option).trigger('change');
        mySelect.trigger({
            type: 'select2:select',
            params: {
                data: data
            }
        });
    });
}

Вот вывод HTML

<select name="form_select[]" class="form-control select2bs4 select2-hidden-accessible" id="form_my_id1" width="100%" required="" data-select2-id="form_stok_id1" tabindex="-1" aria-hidden="true">
    <option value="1" selected="" data-select2-id="5">The Title Of Product</option>
</select>

1 Ответ

0 голосов
/ 24 января 2020

Эта функция сделала мою работу: -)

function pre_select(pre_id, query_id) { //my ID of selection, the query
    var mySelect = $('#form_my_id'+pre_id);
    $.ajax({
        type: 'GET',
        dataType:'json',
        url: '?search&id='+query_id
    }).then(function (data) {
        mySelect.select2("trigger", "select", {
            data: data
        });
    });
}
...