Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript][HTML]Zablokowanie odświeżenia strony po kliknięciu w link
-Jeżeli mam tak skonstruowa-
post
Post #1





Goście







Jeżeli mam tak skonstruowany link:

  1. <a href="strona.php" onclick="Validate()">Link</a>


to jak zrobić, żeby strona się od razu nie odświeżała po kliknięciu w ten link, tylko wtedy gdy w funkcji Validate() zostaną spełnione wszystkie warunki?
Go to the top of the page
+Quote Post
kamil4u
post
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Funkcja JS:
Kod
funtion Validate(){
  if( .....)
    return true;
  else
    return false;
}


Zdarzenie: onclick="return Validate();"
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Wywal adres strony:

  1. <a href="#" onclick="Validate()">Link</a>


A tu masz o blokowaniu domyślnej akcji:

http://www.openjs.com/articles/prevent_default_action/

Ten post edytował b4rt3kk 9.09.2012, 18:37:40
Go to the top of the page
+Quote Post
-Gość-
post
Post #4





Goście







Cytat(b4rt3kk @ 9.09.2012, 18:35:31 ) *
Wywal adres strony:
  1. <a href="#" onclick="Validate()">Link</a>


No ale jak wywalę adres strony to po spełnieniu warunku nie przekieruje użytkownika do tej strony.
Na razie zrobiłem to mniej wiecej tak:
  1. <a href="?url=strona&url2=delete" onclick="return ConfirmDelete();">Delete</a>
  2.  
  3. function ConfirmDelete()
  4. {
  5. var r = confirm("Are you sure you want to delete the object?");
  6.  
  7. if ( r == true)
  8. return true;
  9. else
  10. return false;
  11. }


No i to działa - gdy użytkownik potwierdzi usunięcie obiektu,
to przekierowuje go do odpowiedniej podstrony
dzięki ze zmiennymi w parametrze href="?url=strona&url2=delete".
A gdybym ten parametr pozostawił pusty (href="#") to nie byłoby przekierowania do odpowiedniej podstrony,
czemu więcej wywalić adres strony i zostawić samo href="#"?

Go to the top of the page
+Quote Post
peter13135
post
Post #5





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Jak ktoś wyłączy js, to nie zadziała walidacja, a link będzie działał jak normalny link.

Gdybyś dał do href'a sharpa, a w evencie który się wykonuje po kliknięciu na link dał :
Kod
window. location="Twój link"
, to wtedy przy wyłączonym js link nie przeniesie Cię do innej strony.

Taka jest róznica pomiędzy tymi rozwiązaniami, chyba raczej potrzebne jest Ci to pierwsze, bo walidację i tak musisz robić po stronie serwera.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.09.2025 - 21:53