Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Odwolanie sie po ID w odrebie innego elementu
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
klaudio
Czy da sie w javascript odwolac do elementu po id. ale w odrebie np. innego elementu? Np. Mam sobie diva <div id="container"> i w nim mam rozne elementy o jakis tam id. I teraz chcialbym sie odwolac do elementu o konkretnym id tylko w tym divie.

Mniej wiecej mysle o czyms takim:

var zmienna = document.getElementById("container");

var zmiennaDwa = zmienna.getElementById("jakiesTamId");

Oczywiscie ta konstrukca wyzej nie dziala, ale czy jest to do wykonania?. Czy moge odwolac sie do elementu ogolnie w calym dokumencie?

Dzieki za odpowiedz i pozdrawiam smile.gif
nospor
Najproście przy użyciu libu, np. jQuery

Kod
var zmienna = jQuery("#container");

var zmiennaDwa = zmienna.find("#jakiesTamId");

Bez libu też się da, ale nie chce mi się pisać bo za dużo kodu.
klaudio
Dzieki "nospor" za odpowiedz smile.gif
Tak bede musial zrobic. Niemniej jednak jak ktos wie jak to zrobic w Javiescript to bylbym wdzieczny, poprostu chcialbym wiedziec na przyszlosc.

Pozdrawiam.
kamil4u
ID jest unikalne( jak sama nazwa wskazuje ). Nie można mieć kilka elementów o tym samym ID, inaczej masz błędy logiczne i taka strona jest zrobiona po prostu źle.

Powinieneś zmienić id na klasę i odwoływać się poprzez: element.getElementsByClassName i tyle.

Cytat
Bez libu też się da, ale nie chce mi się pisać bo za dużo kodu.

Cytat
Niemniej jednak jak ktos wie jak to zrobic w Javiescript to bylbym wdzieczny, poprostu chcialbym wiedziec na przyszlosc.

Podam Ci niepoprawne rozwiązanie. Niepoprawne, bo id ma być unikalne. Masz na to dwa sposoby, jeden niekoniecznie działa:
1. Lecisz pętlą po wszystkich elementach rodzica i sprawdzasz czy dany element ma id takie jak potrzebujesz.
2. Pobierasz elementy za pomocą getElementById( no i tu właśnie może być problem, bo ta funkcja pewnie nie zwróci Ci tablicy elementów ) i po tych elementach robisz pętlę sprawdzając czy, rodzic to element, który faktycznie ma być rodzicem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.