-
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail
From: Mirosław Zalewski <miniopl@CUT_THIS.gmail.com>
Newsgroups: pl.comp.www
Subject: Re: Sprawdzanie poprawności formularzy
Date: Thu, 22 Jan 2009 23:19:13 +0100
Organization: http://onet.pl
Lines: 93
Message-ID: <2...@p...place.you.dont.want.to.be>
References: <gklg7e$kg$1@nemesis.news.neostrada.pl>
<2...@p...place.you.dont.want.to.be>
<gkmipk$gdq$1@atlantis.news.neostrada.pl>
<gladgn$nis$1@atlantis.news.neostrada.pl>
<2...@p...place.you.dont.want.to.be>
<glalv0$707$1@nemesis.news.neostrada.pl>
<2...@p...place.you.dont.want.to.be>
<glaq7r$dh0$1@nemesis.news.neostrada.pl>
Reply-To: m...@g...com
NNTP-Posting-Host: bxl188.neoplus.adsl.tpnet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Trace: news.onet.pl 1232662765 13912 83.30.5.188 (22 Jan 2009 22:19:25 GMT)
X-Complaints-To: a...@o...pl
NNTP-Posting-Date: Thu, 22 Jan 2009 22:19:25 +0000 (UTC)
X-Newsreader: Claws Mail 3.5.0 (GTK+ 2.12.11; i486-pc-linux-gnu)
Xref: news-archive.icm.edu.pl pl.comp.www:390265
[ ukryj 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-20 Fiat 125p wer. pikup - w PRL moszna było, w III Reczy [pospolitej] nie moszna
- 2024-05-19 Pożar salonu z chińskimi elektrykami
- 2024-05-18 LED
- 2024-05-19 ceny nieruchomości
- 2024-05-18 Szczecin => UX/UI Designer <=
- 2024-05-18 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-18 Warszawa => Software .Net Developer <=
- 2024-05-18 Warszawa => Mid/Senior QA Engineer <=
- 2024-05-18 Ulm => Solution Architect (sichere Kommunikation und IoT-Loesungen <=
- 2024-05-18 Katowice => Head of Virtualization Platform Management and Operating S
- 2024-05-18 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-18 Wrocław => Consultant/Implementer Comarch ERP XL <=
- 2024-05-18 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-05-18 Warszawa => Account Manager (Recruitment Services) <=
- 2024-05-18 Łódź => Salesperson - CRM Systems <=