-
Data: 2009-01-22 22:19:13
Temat: Re: Sprawdzanie poprawności formularzy
Od: Mirosław Zalewski <miniopl@CUT_THIS.gmail.com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]styczeń roku pamiętnego 2009, prawdopodobnie 22. Wielka mądrość na
czytelników pl.comp.www spłynęła, gdy tako rzekł(a) Gabriel:
> > Generalnie masz rację. Chociaż ja, w celu zachowania większej
> > ogólności funkcji, po prostu sprawdzałbym czy elementem jest
> > <fieldset> i -- jeżeli tak -- wywoływał kolejną iterację pętli:
> > if(x[i].nodeName == 'FIELDSET') continue;
>
> Rewelacyjny pomysl:)
> Wezme wprowadze modyfikacje w swojej wersji skryptu.
> Lubie ogolne rozwiazania.
:)
To jeszcze dwie uwagi. Ale zaznaczam że nie jestem ich pewien i przed
ich wprowadzeniem należałoby sprawdzić czy są one uzasadnione.
Po pierwsze, gdyby jakaś przeglądarka zwróciła nodeName nieskładające
się z samych majuskuł, element ten -- pomimo bycia <fieldset> -- nie
zostałby pominięty. Dlatego można rozważyć jeszcze wykonywanie
metody toUpperCase() na otrzymanym ciągu w celu upewnienia się, że
wielkość znaków nie wpłynie na porównywanie. Ale jeżeli specyfikacja
nakazuje aby nodeName zawierało tylko wielkie litery i wszystkie
popularne przeglądarki tak robią, nie jest to konieczne.
Po drugie, jeżeli <fieldset> może być tylko i wyłącznie pierwszym
dzieckiem <form>, to zamiast sprawdzać wszystkie elementy czy są
fieldset, można to sprawdzić jeszcze przed iteracją.
var i = (x[0].nodeName == 'FIELDSET) ? Number(1) : Number(0);
for (i; i< x.length; i++) { // i tak dalej
Jeżeli jednak <fieldset> może wystąpić gdziekolwiek w formularzu, taka
poprawka wprowadzi tylko błąd. Ja nie sprawdzałem, ale pewnie
specyfikacja HTML o tym wspomina.
> Jedyne zatem, co by mozna bylo tu usprawnic, to wykrywanie przycisku
> submit Ale to juz czepianie dla czepiania, wiec mozna jedynie o tym
> wspomniec w komentarzu do kodu.
Nie jestem pewien czy można w tym kontekście użyć słowa ,,usprawnić" ;) .
> Co bowiem mozna madrego napisac w tym alercie? "Niestety nie dalismy
> rady sprawdzic poprawnosci wypelnienia formularza, bo Twoja
> przegladarka costam nieteges" ?;) Wogole IMO jakikolwiek alert w tym
> miejscu bedzie zly.
Nie nie, model DOM jest wykorzystywany tylko do poinformowania
użytkownika o niepoprawnie wypełnionym formularzu. Sprawdzanie owej
poprawności odbywa się niezależnie od niego.
Idea jest taka -- jeżeli przeglądarka obsługuje model DOM, dynamicznie
tworzymy informacje o błędach przy samych polach formularza. Jeżeli
nie, używamy alert(). Jest to funkcja tak podstawowa, że chyba nie
istnieje przeglądarka z JS która by jej nie obsługiwała.
> > To jak -- wyślesz e-maila do PPK czy ja mam to zrobić? :)
>
> Jezeli mozesz - to wyslij.
> Nie czuje sie kompetentny na tyle, by zwracac komus uwage na te
> rzeczy.
Oj tam ,,kompetentny" -- każdy może się pomylić, niezależnie od poziomu
swojej wiedzy. A ,,guru" jest chyba wystarczająco inteligentny, by o tym
wiedzieć.
Chyba że chodziło o kompetencje językowe.
Niemniej ok -- zaraz przekażę PPK Twoje uwagi.
--
Niżej podpisany, zamieszkały w http://minio.xt.pl ,
Mirosław Zalewski
Następne wpisy z tego wątku
- 23.01.09 05:39 Gabriel
- 23.01.09 08:17 Maciej Łebkowski
- 23.01.09 21:35 Mirosław Zalewski
- 23.01.09 22:32 Gabriel
- 24.01.09 09:48 Gabriel
- 24.01.09 09:58 Paweł Piskorz
- 24.01.09 10:07 Gabriel
- 24.01.09 11:44 ethanak
- 24.01.09 11:59 Radek N.
- 24.01.09 12:18 ethanak
- 24.01.09 12:28 Radek N.
- 24.01.09 13:04 Gabriel
- 24.01.09 13:06 Gabriel
- 24.01.09 14:25 ethanak
- 24.01.09 14:37 Radek N.
Najnowsze wątki z tej grupy
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
- Czy istnieje jakiś emulator przeglądarek pod Mac'a?
- taka sama konfiguracja dla localhost i produkcji
- TypeScript - jak uzyskać zmienne prywatne? Gdzie korzyści z TS?
Najnowsze wątki
- 2024-05-26 O co chodzi?
- 2024-05-26 PJ autobus-tramwaj
- 2024-05-26 Renault Trafic i lampka z czerwonym STOP
- 2024-05-26 cena pięciocyfrowa
- 2024-05-26 Re: Jak dobra KE "okrada" złą Rosję "dla Ukrainy"
- 2024-05-25 supercap
- 2024-05-25 Sulzbach => Technischer Rollouter (d/m/w) <=
- 2024-05-25 Warszawa => Senior Account Manager <=
- 2024-05-25 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-25 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-25 Warszawa => Interactive/Experience Designer <=
- 2024-05-25 Warszawa => Key Account Manager <=
- 2024-05-25 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-25 Warszawa => Key Account Manager <=
- 2024-05-25 Re: znów ten wrocław