Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak pobrać nazwę ze znacznika?
Forum PHP.pl > Forum > XML, AJAX
MazQuick
Witam.

Mam problem. Bo nie wiem jak w js pozyskać wartość ze znacznika name.

Mam sobie obrazek:

<img src="..." name="123" onclick="nazwa(questionmark.gif)"/>


Jak mogę wziąść nazwę z pola name?


Z góry dzięki.
kamil4u
Musisz najpierw dobrać się do tego elementu, korzystając z odpowiednich metod DOM: http://kurs.browsehappy.pl/Definicja/DOM i http://kurs.browsehappy.pl/JavaScript/DOM. Następnie gdy masz już referencję do tego elementu piszesz tylko: referencja.name smile.gif

Chyba, że chodzi tylko o zdarzenie onclick wtedy: onclick="nazwa(this.name);"
#luq
raczej:
Kod
o.getAttribute( 'name' );
kamil4u
@#luq: IMO bez różnicy. Podaj proszę dlaczego lepiej stosować getAttribute? To, że jest to rekomendowane przez W3C nie jest argumentem, gdyż ta organizacja daje jedynie wskazówki. Poza tym starsze przeglądarki nie mają wdrożonej funkcji/metody getAttribute, a przy prostych skryptach nie ma sensu takowych wykluczać. Chyba, że jest jakieś za o którym nie wiem tongue.gif
MazQuick
Chodzi mi tylko o zdarzenie onclick.

Chce na początek wyświetlić zawartość pola name.

Kod
function nazwa(text)
{
      alert(text);
}

  1. echo '<a href="'.$link.'"><img src="'.$img_link.'" name="'.$nazwa.'" onclick="nazwa(this.name);"/></a>


Ten kod działa dokładnie jak chcę smile.gif
Dzięki!


A przy okazji mam pytanie bez zakładania oddzielngo tematu, jak w JavaScript wywołać kod PHP?

Chodzi mi o to, że gdy kliknę ten obrazek wyżej to chcę by wykonał się kod PHP.
Generalnie jedynie co chcę zrobić to aktualizacja danych w bazie i kilka sprawdzań również z bazą.
#luq
W sumie teoretycznie to samo, ale używanie metod przeznaczonych do tego celu jest bardziej na miejscu wg. mnie, no bo po to te metody są, prawda? Jedynie atrybutu class nie ustawisz w ten sposób bo musisz skorzystać z className ale to jest mało istotne. Na pierwszy rzut oka widać, że obiektem jest jakiś węzeł HTMLowy a stosując odwołanie do pola obiektu nie możemy być tego pewni, no bo mogę sobie stworzyć obiekt z polem np. border prawda? winksmiley.jpg
kamil4u
Cytat
Chodzi mi o to, że gdy kliknę ten obrazek wyżej to chcę by wykonał się kod PHP.
Generalnie jedynie co chcę zrobić to aktualizacja danych w bazie i kilka sprawdzań również z bazą.

Poczytaj o AJAX smile.gif

Cytat
Na pierwszy rzut oka widać, że obiektem jest jakiś węzeł HTMLowy a stosując odwołanie do pola obiektu nie możemy być tego pewni, no bo mogę sobie stworzyć obiekt z polem np. border prawda? winksmiley.jpg
Z reguły wiemy co chcemy spr. (jaki element, obiekt) smile.gif - myślałem, że może getAttribute jest szybsze lub coś podobnego i powinienem z niego korzystać.

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.