Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Skrypt który wygeneruje wyjątek
aniadp
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 13.04.2015

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


Chcę napisać skrypt, który wygeneruje wyjątek "Nieprawidłowy email" jeśli nie będzie wprowadzony znak @. Nie wiem czy powinnam użyć throw new error czy alert do wygenerowania wyjątku. Zaznaczyłam komentarzem linie, co do których nie jestem pewna.

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  3.  
  4. window.onerror=wyswietlBledy;
  5. function wyswietlBledy(msg,url,l){
  6. alert ("Nieprawidłowy adres email"+msg +l) //nie wiem czy tutaj alert czy np. throw new Error
  7. return true;
  8. }
  9.  
  10. function sprawdz(x){
  11. if (lx.contains('@')) {
  12. alert('jest ok'); //tutaj też coś mi nie pasuje
  13. }
  14. return true;
  15. }
  16.  
  17.  
  18. </script>
  19.  
  20.  
  21. </head>
  22.  
  23. <input type="text" name="email" onblur="sprawdz(this.value)" />
  24.  
  25.  
  26. </body>
  27. </html>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
PrinceOfPersia
post
Post #2





Grupa: Zarejestrowani
Postów: 717
Pomógł: 120
Dołączył: 18.04.2009

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


throw jest do rzucania wyjątków. Alert nie ma nic wspólnego z wyjątkami, to tylko okienko dialogowe z tekstem (tutaj: "Nieprawidłowy adres email"+msg +l) i przyciskiem OK.


pytanie tylko co ci naprawdę potrzebne. Rzuca się wyjątki (przez throw) po to, żeby wyłapać je w innym miejscu kodu (para throw/catch), i żeby przerwać działanie błędnego kodu, czyli wyjątki są dla programistów.

Jeśli to ma być info dla użytkownika to prędzej alert albo innego rodzaju komunikat na ekranie (w zasadzie alert jest dość inwazyjny, ale czasem można...).

Ten post edytował PrinceOfPersia 23.04.2015, 21:18:39
Go to the top of the page
+Quote Post

Posty w temacie


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.12.2025 - 09:00