#javascript #jquery #ajax #function #select
#javascript #jquery #ajax #функция #выберите
Вопрос:
У меня есть функция под названием «Национальность». Эта функция помещает выбранные параметры в массив из множественного выбора. Это отлично работает.
Но мне нужно сохранить массив из этой функции в переменной, подобной этой: var select = Nationality('NationalityOfOwner');
и затем отправить их в функцию AJAX filter_data.
<script>
$(document).ready(function(){
filter_data();
function filter_data()
{
$('.filter_data').html('<div id="loading" style="" ></div>');
var action = 'fetch_data';
// var Nationality = Nationality('NationalityOfOwner');
// console.log(Nationality);
$.ajax({
url:"includes/filters.inc.php",
method:"POST",
data:{action:action, Nationality:Nationality},
success:function(data){
$('.filter_data').html(data);
}
});
}
function Nationality(select){
$('#' select).on('change',function(){
var filter = [];
$(this).find("option:selected").each(function()
{
filter.push($(this).val());
});
console.log(filter);
return filter;
});
}
var select = Nationality('NationalityOfOwner');
console.log()
});
</script>
Комментарии:
1. Возврат в обработчике событий некуда возвращать. Также событие должно произойти до того, как вы попытаетесь получить пользовательский ввод. Еще один момент заключается в том, что если
<select>
multiple
используетсяval()
select
, то уже будет возвращен массив2. Но если я изменю позицию возврата вниз, он напишет мой «фильтр не определен». Я новичок в javascript, не могли бы вы подробнее рассказать об этом? Его выбор из вызова javascript «selectpicker».