Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Skrypt który wygeneruje wyjątek
Forum PHP.pl > Forum > Przedszkole
aniadp
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>
PrinceOfPersia
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...).
aniadp
Uczę się Java Script na przykładzie zadań i wstawiony powyżej kod jest już gotowy z wyjatkiem linii zoanczonych komentarzem (linia 8 i 14). Mam tylko tam coś wstawić i nie wiem co to ma być. Treść zadania każe mi wygenerować wyjątek "Nieprawidłowy email" i to wszystko. Nie wiem jak to rozumieć
olszam
nie lepiej użyć tej formy jaką oferuje html5?
Cytat
<form>
E-mail:
<input type="email" name="email">
<input type="submit">
</form>

aniadp
Lepiej, ale ja chcę rozwiązać poprzednie zadanie wg jego wymagań.
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.