Loading...
JavaScript | Вопрос по JS
В общем туплю. Не могу получить атрибут data_product_type выбранного селекта)
Ошибка такого рода: Uncaught ReferenceError: select is not defined
Помогите пожалуйста)

HTML:
<select name="category_id" id="parent_id" placeholder="Выберите категорию" required="required" class="form-control"><option value="1" data_product_type="pizza">
1. Пицца
</option> <option value="2" data_product_type="snack">
2. Закуски
</option> <option value="3" data_product_type="snack">
3. Классические
</option> <option value="4" data_product_type="snack">
4. Фирменные
</option> <option value="5" data_product_type="salad">
5. Салаты
</option> <option value="6" data_product_type="dessert">
6. Десерты
</option> <option value="7" data_product_type="drink">
7. Напитки
</option> <option value="8" data_product_type="sauce">
8. Соусы
</option>
</select>


JS:
        const type = document
.getElementById("parent_id")
.options[select.selectedIndex].getAttribute("data_product_type");

________
посл. ред. 26.10.2019 в 13:48; всего 1 раз(а); by Mistika
у parent_id нет атрибута data_product_type, тут value у parent_id вроде если не путаю
Сибирский (26.10.2019 в 14:12)
у parent_id нет атрибута data_product_type, тут value у parent_id вроде если не путаю

После же идет связующий options[select.selectedIndex]
Который по логике вещей должен выбрать выбранный option и взять у него атрибут data_product_type
Мне кажется я как то неправильно обращусь parent_id. Выводит DOM, а мне нужно получить объект.

Есть конечно такой колхозный вариант. Работает. Но хочется по красоте сделать)


<select name="category_id" id="parent_id" placeholder="Выберите категорию" required="required" class="form-control"><option value="1,pizza">
1. Пицца
</option> <option value="2,snack">
2. Закуски
</option> <option value="3,snack">
3. Классические
</option> <option value="4,snack">
4. Фирменные
</option> <option value="5,salad">
5. Салаты
</option> <option value="6,dessert">
6. Десерты
</option> <option value="7,drink">
7. Напитки
</option> <option value="8,sauce">
8. Соусы
</option>
</select>


JS

const [category_id, type] = document
.getElementById("parent_id")
.value.split(",");

________
посл. ред. 26.10.2019 в 14:29; всего 1 раз(а); by Mistika
Mistika (26.10.2019 в 14:19)
После же идет связующий options[select.selectedIndex] Который по логике вещей должен выбрать выбранный option и взять у него атрибут data_product_type

дело в том что option это уже другой элемент у тебя
Онлайн: 0
Время:
Gen. 0.109
(c) ByMAS.RU 2010-2025