Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Przycisk pojawiający się po kliknięciu w link
Forum PHP.pl > Forum > Przedszkole
Kamil9132
Witam
W jaki sposób można zrobić przycisk, który staje się dostępny po kliknięciu w link?
Chodzi mi o to w jaki sposób zrobić żeby przycisk "Wyślij" na formularzu rejestracyjnym stawał się możliwy do kliknięcia dopiero po kliknięciu w link, który znajdowałby się nad nim.
ShadowD
Java script, jako nie znasz się to spróbuj z jquery jest bardzo proste w użyciu.

$() - znajdujesz swój link
.click(function(){...}) - dodajesz zdarzenie click w jego ciele "..."
$() - szukasz przycisku do wysyłania
.attr() - zmieniasz właściwość display na true

Tyle, poszukaj przykładów i z tym sobie poradzisz bez znajomości jq.
bpskiba
W moim odczuciu jquery jest znacznie bardziej "zamotany" niż javascript arrowheadsmiley.png

  1. <script LANGUAGE="JavaScript" TYPE="text/javascript">
  2. function f1()
  3. {
  4. document.getElementById("k").disabled=false;
  5. }
  6. </HEAD>
  7. <a href="http://www.onet.pl" target="blanc" onclick="f1()">odblokuj</a>
  8. <form> <input type="button" value="guzior" id="k" disabled="disabled"></form>
  9. </BODY>
  10. </HTML>
Kamil9132
Dzięki za pomoc, ale mam jeszcze jeden problem z tym przyciskiem.

Spróbowałem zastosować kod bpskiba do formularza rejestracyjnego, ale po kliknięciu na link nic się nie działo, przycisk nadal był niedostępny:
  1. <script LANGUAGE="JavaScript" TYPE="text/javascript">
  2. function f1()
  3. {
  4. document.getElementById("submit").disabled=false;
  5. }
  6.  
  7.  
  8. </HEAD>
  9.  
  10. <tr>
  11. <td class="row1"><a href="http://www.onet.pl" target="blanc" onclick="f1()">odblokuj</a></td>
  12.  
  13. </tr>
  14.  
  15.  
  16.  
  17.  
  18. <tr>
  19. <td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS}<input class="btnmain" type="submit" name="submit" id="submit" disabled="disabled" value="{L_SUBMIT}" />  <input class="btnlite" type="reset" value="{L_RESET}" name="reset" /></td>
  20. </tr>
  21. {S_FORM_TOKEN}
  22. </form>


Korzystam z formularza rejestracyjnego phpbb3, który przed zmianą wyglądał tak:

  1. <tr>
  2. <td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS}<input class="btnmain" type="submit" name="submit" id="submit" value="{L_SUBMIT}" />  <input class="btnlite" type="reset" value="{L_RESET}" name="reset" /></td>
  3. </tr>
  4. {S_FORM_TOKEN}
  5. </form>
jepek
http://jsfiddle.net/4mhq7/
bpskiba
bałaganu narobiłeś.....
gdzie jest <html>
gdzie jest <body>
gdzie jest </body>
gdzie jest </html>

javascript nie musi być w sekcji head. Może być w sekcji body lub w osobnym pliku
jak posprzątasz będzie działać smile.gif
ShadowD
Daj gotowe rozwiązanie do ręki to potem takie klocki...

@bpskiba nie powinno się mieszać css z html i tak samo js z html, kod js powinien dać w osobnym pliku i oprogramować całość, zakładając takie śmiecenie to w zamieszanym jq kod wyglądał by po prostu:
$('#id').attr('disabled','disabled') (blokada)

A i dla userów bez js taki sposób całkowicie uniemożliwi wykonanie skryptu, blokadę też powinniśmy założyć w js a nie css/html... Dopisując blokadę w js(całą funkcję podałem wyżej) i korzystając z reszty od @jepek uzyskasz najbardziej poprawne rozwiązanie problemu.
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.