получить value по кликнотому li
здравствуйте.
как можно получить value кликнув по определенному li? почему то всегда получаю 0 <ul class="list-unstyled text-center"> {% if dop1 %}<li id="pwc{{ dop2 }}" class="active" value="by_cat{{ dop2 }}"><div>{{ dop1 }}</div></li>{% endif %} {% if dop3 %}<li id="pwc{{ dop4 }}" value="by_cat{{ dop4 }}"><div>{{ dop3 }}</div></li>{% endif %} {% if dop5 %}<li id="pwc{{ dop6 }}" value="by_cat{{ dop6 }}"><div>{{ dop5 }}</div></li>{% endif %} {% if dop7 %}<li id="pwc{{ dop8 }}" value="by_cat{{ dop8 }}"><div>{{ dop7 }}</div></li>{% endif %} {% if dop9 %}<li id="pwc{{ dop10 }}" value="by_cat{{ dop10 }}"><div>{{ dop9 }}</div></li>{% endif %} {% if dop11 %}<li id="pwc{{ dop12 }}" value="by_cat{{ dop12 }}"><div>{{ dop11 }}</div></li>{% endif %} {% if dop13 %}<li id="pwc{{ dop14 }}" value="by_cat{{ dop14 }}"><div>{{ dop13 }}</div></li>{% endif %} {% if dop15 %}<li id="pwc{{ dop16 }}" value="by_cat{{ dop16 }}"><div>{{ dop15 }}</div></li>{% endif %} </ul> <script> let act_cat; $('#html39 li').click(function(){ $('#html39 li').removeClass('active'); $(this).addClass('active'); act_cat = $(this).val(); alert(act_cat) }); </script> дело в том что каждый из li хранит определенный id другого блока которому нужно добавить класс active при нажатии на li. |
StartGames,
не надо пихать что попало куда оно не стояло!!! нет value в li, есть только в полях формы input, select, textarea. если очень хочется, act_cat = $(this).attr('value'); но лучше по нормальному data-id="by_cat{{ dop4 }}" вместо value="by_cat{{ dop4 }}" и тогда act_cat = $(this).data('id'); |
Просто взять значение атрибута value у li, по которому кликнули
<body> <ul class="list-unstyled text-center"> <li value="x1"> li 1</li> <li value="x2"> li 2</li> <li value="x3"> li 3</li> </ul> <script> document.querySelector('.list-unstyled') .addEventListener('click', (ev)=>{ const li = ev.target.closest('li') alert(li.getAttribute('value')); })</script> </body> |
Цитата:
https://developer.mozilla.org/ru/doc...TML/Element/li Он есть у <button>, <data>, <input>, <li>, <meter>, <option>, <progress>, <param> https://developer.mozilla.org/en-US/...TML/Attributes А вот у select и textareа нет такого атрибута. У элементов есть свойство value, но оно не связано с атрибутом. |
voraa,
ок! но не для хранения чего попало, а только числа. |
Ну на самом деле хранить то можно, что угодно. Любую строку
И получить это через getAttribute. Вот свойство value, действительно только число. И будет 0, если атрибут не переводится в число. Хотя data-value было бы корректнее. |
Спасибо парни, помогли)) только интересно какие последствия могут быть если если использовать именно value в li который содержит не только цифры.
|
Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 22:23. |