Как я могу предупредить идентификатор <li>
элемента <li>
?
<ul id='myid'>
<li id='1'>First</li>
<li id='2'>Second</li>
<li id='3'>Third</li>
<li id='4'>Fourth</li>
<li id='5'>Fifth</li>
</ul>
(Все, что может заменить идентификатор, может иметь значение или что-то еще.)
Ответ 1
$("#myid li").click(function() {
alert(this.id); // id of clicked li by directly accessing DOMElement property
alert($(this).attr('id')); // jQuery .attr() method, same but more verbose
alert($(this).html()); // gets innerHTML of clicked li
alert($(this).text()); // gets text contents of clicked li
});
Если вы говорите об замене идентификатора чем-то:
$("#myid li").click(function() {
this.id = 'newId';
// longer method using .attr()
$(this).attr('id', 'newId');
});
Демо здесь. И, честно говоря, вы должны сначала попробовать прочитать документацию:
Ответ 2
Если вы немного измените свой HTML-код - удалите идентификаторы
<ul id='myid'>
<li>First</li>
<li>Second</li>
<li>Third</li>
<li>Fourth</li>
<li>Fifth</li>
</ul>
Тогда нужный код jquery...
$("#myid li").click(function() {
alert($(this).prevAll().length+1);
});
Вам не нужно размещать какие-либо идентификаторы, просто продолжайте добавлять элементы li.
Взгляните на демо
Полезные ссылки
Ответ 3
Вы можете получить значение соответствующего li с помощью этого метода после нажатия
HTML: -
<!DOCTYPE html>
<html>
<head>
<title>show the value of li</title>
<link rel="stylesheet" href="pathnameofcss">
</head>
<body>
<div id="user"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<ul id="pageno">
<li value="1">1</li>
<li value="2">2</li>
<li value="3">3</li>
<li value="4">4</li>
<li value="5">5</li>
<li value="6">6</li>
<li value="7">7</li>
<li value="8">8</li>
<li value="9">9</li>
<li value="10">10</li>
</ul>
<script src="pathnameofjs" type="text/javascript"></script>
</body>
</html>
JS: -
$("li").click(function ()
{
var a = $(this).attr("value");
$("#user").html(a);//here the clicked value is showing in the div name user
console.log(a);//here the clicked value is showing in the console
});
CSS: -
ul{
display: flex;
list-style-type:none;
padding: 20px;
}
li{
padding: 20px;
}
Ответ 4
Если у вас есть несколько элементов li
внутри элемента li
то это определенно поможет вам, и я проверил это, и это работает....
<script>
$("li").on('click', function() {
alert(this.id);
return false;
});
</script>