Мне кажется, ваш код работает нормально. Так что, возможно, вы js каким-то образом не выполняете или jQuery не загружается должным образом, вы пробовали войти в консоль в событии onChange?
Кроме того, я сделал несколько незначительных улучшения вашего кода.
$("#options").on("change", function () {
var selectValue = $(this).val();
var options = lookup[selectValue].map(
(v) => `<option value="${v}">${v}</option>`
);
$("#choices").html(options.join("\n"));
});
Обратите внимание, что вместо добавления каждого элемента мы подготавливаем строку, а затем манипулируем DOM только один раз в конце. Это более эффективно.
Остальная часть вашего кода в порядке