Я добавляю новый элемент в select2. Когда это происходит, я запускаю запрос onChange AJAX. Запрос AJAX добавляет новый элемент в БД и возвращает идентификатор вставленной строки.
ATM, значение добавленной опции в select2 содержит исходное введенное мной значение строки. Я хочу обновить значение этой указанной c опции в select2, чтобы она стала идентификатором строки базы данных, которая была возвращена из вызова AJAX.
Вот JS:
$('.my-select2').on('change', function() {
$.ajax({
type: 'POST',
url: '/ajax/groups/saveGroup',
data: {
"_token": "{{ csrf_token() }}",
"value": this.value
},
dataType: 'json',
success: function(data){
console.log(data); // this equals the id of the row in the db,
// and it's what I want to make into the value of
// the option that's been added.
// I've tried many more than the following and none have worked.
// $(this).attr("value", data);
// $(this).val(data).change();
// $(this).select2("val", data);
// $('.my-select2').select2('data', {id: data, text: 'original value'});
}
});
Помогите, пожалуйста, у меня нет идей и нет запросов Google.