У меня есть три выбора, которые динамически заполняются после выбора опции из меню выбора над ней. Если я выбираю параметр из первого выбора, второй заполняется так, как предполагалось, но если я изменил параметр в первом, параметры будут добавлены к существующим параметрам, а не к выбору, который будет сброшен, а затем занесен новыми данными. Я уверен, что есть какой-то метод перезагрузки или сброса, который я могу вызвать, когда я хочу сбросить старые данные из перед заполнением новыми данными, я просто не могу его найти.Сброс выпадающего списка При выборе вариантов найма
Javascript
<script>
$(function() {
$("#service").change(function() {
var service = $(this).val();
$.ajax({
type: "GET",
url: "<?=Config::get('baseURL');?>getdata.php",
data: { service: service },
dataType: "json"
}).done(function(reply) {
console.log(reply);
$.each(reply, function(key, value) {
$('#category').append($('<option>', { value: value.value }).text(value.text));
});
});
});
});
$(function() {
$("#category").change(function() {
var service = $("#service").val();
var category = $(this).val();
$.ajax({
type: "GET",
url: "<?=Config::get('baseURL');?>getdata.php",
data: {
service: service,
category: category
},
dataType: "json"
}).done(function (reply) {
$.each(reply, function (key, value) {
$("#subCategory").append($('<option>', {
value: value.value
}).text(value.text));
});
});
});
})
</script>
Этот код работает отлично, но я, как я могу настроить его, чтобы очистить старые данные из там, если я изменить параметр в раскрывающемся списке предшествующая?
Если содержание '# subCategory' полностью генерируется вашим кодом, первое, что вам нужно сделать, это' .empty() 'все, что в нем. В противном случае вы просто сохраните '.append()' -из большего количества данных. https://api.jquery.com/empty/ (Это явно не сработает, если какая-то из # подкатегории статична, но это должно заставить вас начать.) – lostphilosopher