Подтвердить что ты не робот

JQuery получить идентификатор/значение элемента <li> после функции щелчка

Как я могу предупредить идентификатор <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>

(Все, что может заменить идентификатор, может иметь значение или что-то еще.)

4b9b3361

Ответ 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>