Mam długo dynamicznie generowaną listę każdy z tym samym identyfikatorem klasy i atrybut danych podobny do poniższego kodu:JQuery uzyskać wszystkie dane atrybuty z listy
<ul>
<li class="list" data-id="123">One</li>
<li class="list" data-id="124">Two</li>
<li class="list" data-id="125">Three</li>
<li class="list" data-id="126">Four</li>
.....etc
</ul>
co próbuję osiągnąć to, aby uzyskać wszystkie wartości data-id
i formatować je w sposób następujący:
123|124|125|126....etc
ten będzie następnie przekazywane do strony za pośrednictwem ajax i ID użytkownika sprawdzane pod kątem istnienia w bazie danych.
var delimited_data="";
$('.list').each(function(){
delimited_data+=$(this).data('id')+"|";
});
console.log(delimited_data);
Powodem Zadaję to pytanie jest to, że pracuję na żywo systemu, który automatycznie wdraża pozycji na liście kolumn do różnych użytkowników po 10 minutach. Po prostu muszę się upewnić, że kod idzie właściwą drogą :)
Muszę również sprawdzić, czy na stronie nie ma klas .list
(tj. - nie ma sposobu na wykonanie zapytania), czy delimited_data
będzie całkowicie pusty, co do którego jestem pewien.
Czy jest lepszy sposób niż użycie .each()
w tym przypadku, ponieważ uważam, że może to być raczej powolne zapamiętywanie, że powyższa funkcja będzie uruchamiana co 30 sekund.
Aby sprawdzić istnienie '.list', uruchom sprawdzenie długości' .list'A –