Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Czyszczenie pól formularza i kursor
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Nosfi
Witam,

Strona jest oparta o ramki.
RAMKA_1 zawiera odpowiednie informacje pobierane z bazy itp. i link przesyłający odpowiednie zmienne do formularzy w RAMKCE_2:

  1. <a href="?zmienna=wartosc" target="RAMKA_2">Link</a>


Pierwszy problem to taki, że chciałbym aby po kliknięciu na link w RAMCE_1, kursor skoczył odrazu do pierwszego pola formularza do RAMKI_2.

Teraz w RAMCE_2 pojawia się formularz gdzie wpisujemy odpowiednie dane i przesyłamy je spowrotem do RAMKI_1.

I tu mam drugi problem ... mianowicie chciałbym aby po kliknięciu SUBMIT i przesłaniu danych do RAMKI_1, w RAMCE_2 wyczyściły się pola formularza i kursor stanął w pierwszym polu.

--------------------------------------------------

Przyznaje się bez bicia biggrin.gif , że z JavaScriptu nie korztystam za często, a nawet bardzo żadko, dlatego też zwracam się do was z prośbą o pomoc ...

Dzięki wielkie ... pa
revyag
Jeśli po klinięciu na link ramka_2 jest przeładowywana to najprościej dać w body tej ramki:
  1. <body onload="document.getElementById('pole_formularza').focus()">

a żeby po wysłaniu formularza został on wyczyszczony dodaj do niego:
  1. <form action="ramka1.php" target="ramka1.php" onsubmit="this.reset();this.nazwa_pola.focus()">
morrison
a co jest odpowiedzialne za to w ktorym polu formularza jest polozony kursor?
Chce u siebie tak zrobic aby po wejsciu na strone kursor pojawial sie w polu formularza tam gdzie podaje sie login...
questionmark.gif
revyag
Za pomocą funkcji focus() możesz ustawić który element formularza ma być w danej chwili aktywny, więć jeśli chcesz aby kursor pojawiał się w inpucie do logowania to robisz tak jak podałem powyżej:
  1. <body onload="document.getElementById('pole_logowania').focus()">
  2. ...
  3. ...
  4. <input id="pole_logowania" type="text">
  5. ...
  6. ...
Nosfi
1 część:
  1. <body onload="document.getElementById('pole_formularza').focus()">

działa rewelacyjnie ... dzięki

natomiast druga część:
  1. <form action="ramka1.php" target="ramka1.php" onsubmit="this.reset();this.nazwa_pola.focus()">

niestety nie zdaje egzaminu ...

w chwili wciśnięcia SUBMIT zostaje wyczyszczone pole nazwa_pola i przesłane (puste) do ramka1.php
revyag
No racja, czyści formularz przed wysłaniem smile.gif
To zrób tak, w ramce pierwszej jak już odczytasz dane z formularza z ramki pierwszej wyskocz z php i daj taki kod:
Kod
parent.ramka2.document.getElementById('nazwa_formularza').reset()

a ten kod reagujący na onsubmit w formularzu wyrzuć.
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.