У уль есть имя с идентификатором, который является максимальным идентификатором jquery? - PullRequest
1 голос
/ 16 февраля 2010

У меня есть ul li с тем же именем

li id ​​= "name1"
li id ​​= "name2"
и т.д.

Я могу добавлять и удалять li, но нумерация не всегда хороша. Как я могу получить максимальный идентификатор имени?

Большое спасибо

Ответы [ 2 ]

3 голосов
/ 16 февраля 2010

Если они гарантированно появляются последовательно в вашем документе, вы можете сделать:

<li id="name1">Name1</li>
<li id="name2">Name2</li>

alert($("li[id^=name]:last").attr("id"));

или если вам просто нужно число :

alert($("li[id^=name]").length);

где [id^=name] означает, что атрибут id начинается с 'name'.

2 голосов
/ 16 февраля 2010
function getLiIdWithMaxValue()
{
    var liIdMaxValue = 0;
    var lisWithName = $('LI[id^=name]'); //Use of @Karims79 terse selector
    for(var i = 0; i < lisWithName.length; i++) {
      var idNo = parseInt($(lisWithName[i]).attr('id'));
      if (idNo > liWithMaxName)
      {
        liIdMaxValue = idNo;
      }
    }
    return liIdMaxValue;    
}
...