![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 1 Dołączył: 6.12.2007 Ostrzeżenie: (0%) ![]() ![]() |
Potrzebuje zrobic na stronie tzw. Active validate. Wiec jak mam formularz lub\i formularze to za pomoca JS zbieram liste wszystkich pol. Chcialbym aby wartosci pol wraz z ich ID gdy urzytkownik wprowadzi dane zostaly poddane wlidacji poprzez AJAX wyslane do serwera, ktory sprawdzi ktore pole jest walidowane oraz sprawdzi jego wartosc po czym odpowie zwracajac 1 gdy wartosc pola jest nieprawidlowa(np. za malo jest znakow).
Wszystko jest dobrze tylko ja nie-chce dopisywac do kazdego pola wartosci onchange="blabla" tyko aby skryt sam mi zliczyl pola i oczekiwal na zdazenia z danego pola. Probowalem zapisac taki oto kod Nasz formularz: Kod <form id="rejestracja" method="post" action="index.html"> <input type="text" id="FIRST_NAME" name="FIRST_NAME"/> <input type="text" id="LAST_NAME" name="LAST_NAME" /> <input type="text" id="EMAIL" name="EMAIL" /> <input type="submit" id="SUBMIT" value="rejestruj" /> </form> Skrypt zwracajacy tablice ID wszystkich pol, z wszystkich formow w dokumencie: Kod <script> var formsNo=document.forms.length; var tab=new Array(); for(var i=0; i < formsNo; i++){ inputsNo=document.forms[i].elements.length; for(c=0; c<inputsNo; c++ ){ element=document.forms[i].elements[c]; tab.push(element.id); } </script> Wiec jak mam formulaz to skrypt powyzej zlicza pola i ID tych pol zapisuje do tablicy "tab". Jak teraz zrobic aby przy zdarzeniu onchange zostal wykonany jakis skrypt, probowalem zapisac do tej tablicy: Kod "document.forms[i].elements[c].onchange=function(){alert(document[forms[i].elements[c].id);}" ...aby przy zdarzeniu onchange wykonala sie funkcja i wyswietli mi okienko z ID pola formularza, taki zapis mi niedziala bo do tablicy zapisuje mi stringi gdy wyswietlilem sobie zawartosc jednego pole w tej tablicy to mialem forms[i].elements[c] niepodstawialo mi wartosci "i" i "c".Zatem jak napisac ta funkce aby oczekiwala na zdarzenie pochodzace z pola formularza?? Oraz aby ta funkcja niebyla z dokumencie ale w sekcji head Ten post edytował Beynar 25.12.2007, 11:51:09 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 1 Dołączył: 6.12.2007 Ostrzeżenie: (0%) ![]() ![]() |
dobrze wszystko ok ale czy moge jakos tak zrobic zeby ten skrypt byl w head albo w pliku skrypt.js??
bo chodzi oto ze ja przy kazdym zaladowaniu formulaza bede musial dopisywac ten skrypt na koncu. formularze dopisuje za pomoca AJAX'a wiec chcialbym poprostu nawet juz tylko na koncu formularzy wywolac funkcje ktora bylaby zaladowana w head |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 23:24 |