ugrás a tartalomhoz

getElementById() tulajdonság

Anonymous · 2004. Okt. 8. (P), 11.23
Sziasztok!

Azt szeretném kérdezni tőletek, hogy azok az elemek, melyeknek van id-jük elérhetőek-e egy tömbön keresztül is? Vagyis ezek az elemek tárolva vannak-e egy tömbben, mint ahogy pl. az img-ek is?
 
1

Objektumok elerese

Adam · 2004. Okt. 8. (P), 11.56
Hali!

1. a getElementById() az nem tulajdonsag, hanem metodus
2. a document-en keresztul el lehet erni, minden elemet: document.id_neve, de erdemesebb a getElementById() hasznalata.

Ha az a gond, hogy nem tudod letezik e, a kovetkezot csinald:
var _element = document.getElementById('elemIDje');
if(!_element) { nincs ilyen! }


Udv,
Adam
2

Bocs az 'tulajdonságért'(ez

Anonymous · 2004. Okt. 8. (P), 12.12
Bocs az 'tulajdonságért'(ez égés).
A gond az, hogyan tudom elérni a documentumban szereplő legutolsó elemet, aminek van id-je, de nem ismert, vagy minden oldalon más, de mindegyiken el kellene érni?
3

DOM

attlad · 2004. Okt. 8. (P), 13.52
Pl. megoldhatod DOM segítségével, vmi ilyesmi módon:

function utolsoid() {
  if (document.all) {
    ets = document.all;
  } else {
    ets = document.getElementsByTagName('*');
  }
  for (i=ets.length-1; i>=0; i--) {
    atts = ets[i].attributes;
    for (j=0; j<atts.length; j++) {
      att = atts[j];
      if (att.nodeName.toLowerCase() == 'id' && att.nodeValue) {
        return att.nodeValue;
      }
    }
  }
}
De lehet van egyszerűbb módszer is.

Attila
4

Köszi, ez ok!

Anonymous · 2004. Okt. 8. (P), 14.00
Köszi, ez ok!
5

Sziasztok! Meg tudná mond

Anonymous · 2004. Okt. 28. (Cs), 23.24
Sziasztok!

Meg tudná mondani valamely kedves guru, hogy miért nem működik a következő kód Mozilla/Firefoxban (IE-ben megy):
document.getElementById(mezo).style.backgroundColor="#FF9999";
Csak így megy:
document.forms["nagy"].elements[mezo].style.backgroundColor="#FF9999";, viszont elvileg kéne mennie a másik megoldásnak is, nem?

Köszönöm előre is!
Üdv: Gen
9

mező!?

bbalint · 2004. Okt. 29. (P), 09.49
mi az a mezo nevű dolog ottan? mármint, vala egy mezo nevű változód ... és, szóval az milyen típusú vagy micsoda egyáltalán!?
és amit tartalmaz, van olyan azonosítójú (id tag) dolog a dokumentumban?

bbalint
10

mezo name vs id

Anonymous · 2004. Okt. 29. (P), 11.02
a getElementById neveben is benne van, hogy ID alapjan ad vissza nevet, tehat ha te a form mezodnek a name tulajdonsagat adtad es nem ID-t akkor nem talalja meg, mert nincs olyan ID-ju elem az oldalon.

Egyebkent van a getElementsByName metodus is. Ezzel name alapjan kapod vissza az eredmenyt. Viszont egy fontos kulonbseg van. ugyanolyan name -mel lehet tobb elem is az oldalon ezert ez egy tombot fog visszaadni! (benne is van a neveben a getElement[s]B.. tobbes szam)

Egyebkent nyugodtan hasznald a document.forms modszert az eleereshez mivel az visszafele kompatibilis es tobb bongeszo ismeri.
6

szabvanyos?

Jano · 2004. Okt. 29. (P), 00.22
Ez a document.id_neve szerintem csak IE-n mukodik. Ez nem szabvany.
7

Alapvetően, a getElementById

Anonymous · 2004. Okt. 29. (P), 00.38
Alapvetően, a getElementById DOM-modellbéli dolog nem?
A Mozilla oldalain is szerepelnek ilyesmi kódok a doksik között (vagy már olyan fáradt vagyok, hogy bediliztem?)!
Köszi és üdv: Genesis
8

igen

Jano · 2004. Okt. 29. (P), 01.49
a getElementById teljesen szabvanyos, en nem is abba kotottem bele!