Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Własna funkcja a lokalizacja identyfikatora na WWW
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
wujek2009
Cześć.

W nagłówku wczytuje plik js, w którym mam funkcje np. "szukaj()". Parę linijek niżej mam sformułowany formularz HTML FORM, gdzie nadałem im identyfikatory i chciałbym wykorzystać wpisane dane w okienko input w funkcji "szukaj()" JS.

W ten sposób prezentuje się kod HTML:
  1. <form action="/serach" method="get" id="headerSearch" accept-charset="utf-8" class="clear">
  2. <div>
  3. <input type="text" id="q" name="q" value="" />
  4. <input type="image" value="" src="/page/search.png" class="sendQueryClass" onclick="headerSearch(); return false;" />
  5. </div>
  6.  
  7. </form>
  8.  


Rozpocząłem testy. W funkcji "szukaj()" dodałem następujący kod:
[JAVASCRIPT] pobierz, plaintext
  1. alert(document.getElementById('q'));
[JAVASCRIPT] pobierz, plaintext


Wynik? "[object HTMLInputElement]"
Spróbowałem z jQuery:
[JAVASCRIPT] pobierz, plaintext
  1. alert($('#q').value);
[JAVASCRIPT] pobierz, plaintext


Wynik? "undefined"

Zdaje sobie sprawę, że funkcja "szukaj()" powinna być zlokalizowana NIE PRZED kodem HTML a PO FORMULARZU - tylko zależy mi, aby trzymać kod JS w plikach zamiast mieszać z kodem HTML.

Czy jest jakiś sposób na otrzymanie value po naciśnięciu obrazkowego submit? Próbowałem zmienić:
  1. <input type="image" value="" src="/page/search.png" class="sendQueryClass" onclick="headerSearch(); return false;" />
  2. na
  3. <input type="image" value="" src="/page/search.png" class="sendQueryClass" onclick="headerSearch(document.getElementById('q')); return false;" />


Jednak nic z tego. Czy jest inna droga?

W ogóle dlaczego chce zastosować JS przy szybkim wyszukiwaniu? Ponieważ normalnie adres URL tworzy mi się w postaci: /search?q=tresc&x=10&y=5

Gdzie zmienna "q" to wartość z value, a x i y to położenia mojego kursora na obrazku (submit) podczas wysyłania.
Chciałbym właśnie za pomocą JS sprawdzać czy formularz jest uzupełniony i w razie czego tworzyć mu odpowiedni adres przy użyciu funkcji:
[JAVASCRIPT] pobierz, plaintext
  1. $('#idSubmita').submit();
[JAVASCRIPT] pobierz, plaintext


wookieb
Próbujesz sprawdzać 2 kompletnie rózne rzeczy
raz jest to element a druga to wartość elementu
W jquery jest "val()" a w samym DOMJS element.value
wujek2009
O cholera masz racje. Zjadłem value dla document.getElementById smile.gif
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.