problem ze user skryptem, getElementsByName() nie zwraca elementu tylko "undefined" :(

w dziale Aplikacje dla Opery
smqzbq napisał(a):

pisze sobie do przeglądarki Opera User Java scripta który będzie pobierał pewną wartość z pola input i wyswietlał ją za pomocą alert()

skrypt jest prosty:

// ==UserScript==
// @name wspolrzedne
// @author smqzbq
// @version 1.3
// @include http://www.geoportal2.pl/geo/*
// ==/UserScript==


window.addEventListener('click', function(e) {
   
 
    var x=document.getElementsByName("coordn");
    alert(x.value);

   
}, false);



problem jest taki że mimo iż wiem że na stronie istnieje tylko jeden element o takiej nazwie (coordn) to getElementsByName() nie zwraca mi tego elementu (albo moze zwraca tylko nie umiem się odwolac do własciwiosci tego obiektu ?)- chcem pobrać współrzędne z miejsca kliknięcia które znajdują się w INPUT o nazwie "coordn"

efektem działania skryptu jest okienko alert z napisem "undefined" :/


tu jest źródło strony :

http://wklej.org/id/126958/

linia 657 jest jak byk
<INPUT type="text" size="10" class="mapunits" name="coordn" >

czy ktoś tu widzi jakiś błąd w rozumowaniu?

nowotny napisał(a):

getElementsByName() zwraca "tablicę"... musisz więc wyświetlić pierwszy element tej tablicy:

alert(x[0].value);

dark33 napisał(a):

fakt metoda ta zwraca tablice elementów o tej samej nazwie w dokumencie czyli między znacznikiem <HTML></HTML> bo jak sie okazuje w dokumencie można dopuścić kilka elementów o tej samej nazwie, lepsze jest szukanie po ID...

smqzbq napisał(a):

najpierw chciałbym złożyć wielkie dzięki dla nowotnego za wkazanie bledu i.. w ogóle za samo przeczytanie posta smile dla kogos zwrócenie uwagi na taki blad to minuta a ja sie z tym meczyłem pol dnia i nic z tego dlatego jeszce raz wielkie dzieki.


dark 33 no ale ten konkretny element nie miał ID więc raczej odpada

Pozdrawiam wszystkich i jeszcze raz dzieki za pomoc smile

dark33 napisał(a):

A Co za problem dodać ID i użyć getElementById('ID')

nowotny napisał(a):

Pewnie taki, że smqzbq nie jest autorem tej strony... Inaczej po co miałby pisać user skrypta jakby mógł to zrobić bezpośrednio w kodzie strony...? wink

dark33 napisał(a):

Czyli kombinacje alpejskie smile

pzdr.

smqzbq napisał(a):

popełniłem skrypt który czyta wspólrzędne z geoportalu:
http://my.opera.com/smqzbq/blog/2009/08/15/gps-garmin-geoportal-gov-pl-inspekcja-terenowa