Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyrażenie regularne, Firefox i konsola JavaScript
JaRoPHP
post 8.05.2005, 09:16:07
Post #1





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Witam!!!

Jak napisać wyrażenie regularne do sprawdzenia, czy wpisano ciąg liter (bez cyfr)?

Napisałem taki kod:

  1. <script type="text/javascript">
  2. function check()
  3. {
  4. var blad = ""; // komunikat o błędzie
  5. var flaga = 0; // czy wszystko jest w porządku
  6.  
  7. //sprawdzenie, czy nie ma cyfr
  8.  
  9. if(!(document.forms[0].elements[4].value).match(/^([a-zA-Z]+)+$/))
  10. {
  11. // wstawienie kursora
  12. document.forms[0].elements[4].focus();
  13.  
  14. blad += "Nazwa nie może zawierać cyfr!\n";
  15. flaga = 1;
  16. }
  17.  
  18. // jeżeli są błędy to komunikat - dla ułatwienia ponumerowałem linijki
  19. 119: if(flaga == 1)
  20. 120: {
  21. 121: alert(blad);
  22. 122: return false;
  23. 123: }
  24. 124: else
  25. 125: return true;
  26. }
  27.  


Formularz ma akcję: onsubmit="chceck();".

Wszystko działa poprawnie - to znaczy, jak są cyfry, wyświetla się komunikat, jednak w przeglądarce Firefox w konsoli JavaScript wyswietla się błąd:

Kod
Błąd: [Exception... "'Nie udzielono uprawnieD do odczytania wBa[ciwo[ci XULElement.selectedIndex'
when calling method: [nsIAutoCompletePopup::selectedIndex]"
nsresult: "0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)"
location: "JS frame :: http://localhost/PSI/skrypt.js :: checkClient :: line 121"
data: no] Plik źródłowy: http://localhost/PSI/skrypt.js Wiersz: 121


wiersz wskazuje na linijkę 121, więc alert(blad).

Jeżeli nie wprowadzę powyższego wyrażenia, wszytsko przebiega poprawnie (bezbłędnie)...

Co jest źle?


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

Błąd juz znalazłem.... (dla ciekawych)
Otóż nie mogę dać focusa przed alertem (w uproszczeniu), dlatego najpierw deklaruję zmienną, która pamięta, które pole ma być aktywne po komunikacie, następnie daję alert i metodę focus().

Ten post edytował JaRoPHP 10.05.2005, 17:44:58


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 15.06.2025 - 07:01