Я использую плагин select2. Я пытаюсь заставить e3 «загружать» данные из областей массива на основе второго поля выбора. Это мой код:
var regions = [{"first":["City1", "City2"],"second":["City3", "City4"]}];
$('#e2').select2().on('change', function() {
$.each(regions[($("#e2").val())], function(key,value) {
$("#e3").append("<option value='"+value+"'>"+value+"</option>");
});
}).trigger('change');
РЕДАКТИРОВАТЬ: ошибка, которую я получаю, каждый раз, когда я меняю значение #e2
: Uncaught TypeError: Cannot read property 'length' of undefined
Что я делаю не так?
Спасибо! :)
РЕДАКТИРОВАТЬ2:
$('#e2').select2().on('change', function() {
$.each(region[$("#e2").select2("val")], function(key,value) {
alert(region[$("#e2").select2("val")]);
$("#e3").append("<option value='"+value+"'>"+value+"</option>");
});
}).trigger('change');
Это было предложено... Это все еще дает предыдущую ошибку (Uncaught TypeError). Однако предупреждение возвращает: undefined