получить 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, время: 06:44. |