Как получить значение поля, созданного с помощью jQuery?

Когда выбираю марку автомобиля подгружаются модели этой марки ,
но когда хочу получить значение выбранной модели то val пустое.

$('#brand, #model').change(function(){
//Для удобства записываем обращения к атрибуту и значению каждого поля в переменные
var id = $(this).attr('id');
var val = $(this).val();

switch (id){
//при изменении марки автомобиля подгружаются модели этой марки
case 'brand':
//выбираем модели выбранной марки
$.ajax({
type: 'POST',
url: "kasko.php",
data: {
func: "getModel",
brand: $("#brand select option:selected").val()
},
beforeSend: function() {
$(".loading-div").show();
},
success: function(data) {
var arrModel = JSON.parse(data);
//Получаем из базы список моделей автомобилей
for (var i = 0; i < arrModel.length; i++) {
$("#model select").append(""+ arrModel[i] +"");
}
},
error: function(xhr) {
alert("Ошибка попробуйте еще раз");
},
complete: function() {
$(".loading-div").hide();
}
// dataType: 'html'
});

break;
//при изменении модели
case 'model':
alert(val);
break;
}
}
  • Вопрос задан
  • 125 просмотров
Пригласить эксперта
Ответы на вопрос 1
@vdl_moskau
Web-developer, Java-developer
Попробуйте так:

$(document).on("change","#brand, #model",function(e){
// Обработчик события
});

Только Вы, вероятно, не сможете использовать $(this) внутри, это можно обойти так:

var val = $(e.target).find('option:selected').val();
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы