Почему это не возвращает значение в 'li'? Что я делаю неправильно?
$("#list li").click(function() {
var selected = $(this).val();
alert(selected);
})
Почему это не возвращает значение в 'li'? Что я делаю неправильно?
$("#list li").click(function() {
var selected = $(this).val();
alert(selected);
})
Вы хотите, чтобы HTML или текст находился внутри тега li
?
Если да, используйте либо:
$(this).html()
или
$(this).text()
val()
предназначен только для полей формы.
<ul id="unOrderedList">
<li value="2">Whatever</li>
.
.
$('#unOrderedList li').click(function(){
var value = $(this).attr('value');
alert(value);
});
Ищите атрибут "значение" внутри тега "li"
Используйте .text() или .html()
$("#list li").click(function() {
var selected = $(this).text();
alert(selected);
});
A li не имеет значения. Только элементы, связанные с формой, такие как input, textarea и select имеют значения.
Скорее всего, вы хотите что-то вроде этого:
$("#list li").click(function() {
var selected = $(this).html();
alert(selected);
});
<div class="inter">
<p>Liste des Produits</p>
<ul>
<li><a href="#1">P1</a></li>
<li><a href="#2">P2</a></li>
<li><a href="#3">P3</a></li>
</ul>
</div>
$(document).ready(function(){
$(".inter li").bind(
"click", function(){
alert($(this).children("a").text());
});
});
Вы можете сделать то же самое, используя jQuery on().
$("#list").on('click','li',(function() {
var selected = $(this).text(); //or .html()
alert(selected);
})
$("#list li").click(function() {
var selected = $(this).html();
alert(selected);
});
Чтобы получить значение li, мы должны использовать $ ( "# list li" ). click (function() { var selected = $(this).html();
или
var selected = $(this).text();
alert(selected);
})