Javascript - wyszukiwanie elementów według ich identyfikatorów

Ta wskazówka pokaże Ci, jak szukać elementów na podstawie ich ID. To wtedy drugie pasuje do wyrażenia regularnego.

Kwestia

Znasz już metodę getElementById (id), która jest używana do zwracania elementu związanego z określonym identyfikatorem (ponieważ identyfikator jest koniecznie unikalny) oraz metoda getElementsByTagName (tagName), która zwraca tablicę zawierającą wszystkie elementy ze wspomnianym znacznikiem.

Są przypadki, w których te rozwiązania nie wystarczą.

Na przykład: masz kwadraty na swojej stronie: gdy użytkownik kliknie przycisk, każdy kwadrat zmienia rozmiar, każdy o nowym rozmiarze. Aby zarządzać nimi, musisz mieć listę ich identyfikatorów. Dostępne są dwa rozwiązania:

Za każdym razem, gdy dodajesz kwadrat, ręcznie zwiększasz listę identyfikatorów.

Masz pętlę, która przeszukuje dokument, aby znaleźć kwadraty, dlatego metoda pasuje bezpośrednio do kodu. Ale jak odzyskać wszystkie identyfikatory, wiedząc, że nie znasz dokładnej liczby kwadratów (nie pętli) i nie wiesz, gdzie znajdują się na stronie?

Rozwiązanie

Będziemy używać metody getElementByRegexId. Ta metoda ma dwa parametry, a mianowicie:

Wyrażenie regularne pasujące do identyfikatorów.

[Fac] Nazwa szukanego tagu. Jeśli nic nie jest wskazane, wszystkie znaczniki będą brane pod uwagę.

Zasada jest prosta: przeszukiwamy elementy pobrane przez getElementsByTagName, testujemy identyfikatory i wszystko, co pasuje do wyrażenia regularnego, dodaje się do tabeli:

 funkcja getElementsByRegexId (regexpParam, tagParam) {// Si aucun nom de balise n'est spécifié, cherche sur toutes les balises tagParam = (tagParam === undefined)? '*': tagParam; var elementsTable = new Array (); for (var i = 0; i 

Przykład:

 var divCarres = getElementsByRegexId (/ _ carre. * /, "div"); var tousLesCarres = getElementsByRegexId (/ _ carre. * /); 

Poprzedni Artykuł Następny Artykuł

Najważniejsze Wskazówki