![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 230 Pomógł: 3 Dołączył: 8.01.2008 Ostrzeżenie: (10%) ![]() ![]() |
Na kursie webmade (http://webmade.org/porady/walidacja-danych-formularz-javascript-js.php ) ujrzałem taki fragment kodu:
Kod with(document.forms[0]){ if (imie.value == "") bledy += "Nie podałeś imienia. \n"; if (nazwisko.value == "") bledy += "Nie podałeś nazwiska.\n"; if (komentarz.value == "") bledy += "Nie napisałeś treści"; if (bledy != "") error(bledy); } No i działa - pobiera to dany formularz i na nim wykonuje operacje. Ale nie mogę o tej funkcji nic w necie znaleźć - jest ona w ogóle kompatybilna ze wszystkimi przeglądarkami, np. IE (mi na FF działa)? Spotkał się ktoś kiedyś z nią, używał jej? Jak najlepiej dostawać się do elementów formularza - używam jQuery, ale tam, żeby dostać się do jakiegoś elementu formularza, trzeba wpisać coś takiego (jeżeli działamy na formularzu - this=naszformularz): Kod $(this).find("input[@name='login']") A w czystym js wystarczy: Kod this.login (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Ale czy przypadkiem nie ma problemów w IE z takim pobieraniem pół formularza? Ten post edytował Apocalyptiq 22.11.2008, 11:07:14 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 603 Pomógł: 131 Dołączył: 24.07.2007 Skąd: Górny Śląsk Ostrzeżenie: (0%) ![]() ![]() |
https://developer.mozilla.org/en/Core_JavaS...#with_Statement
With to element języka. Ale lepiej przypisywać 'dłuższą ścieżkę' typu document.forms[0] do zmiennej np. var f Co do jQ., to nikt Ci nie broni używać razem z nim czystego js. Selektor jQ. tworzy obiekt jQuery, który ma swoje metody. Jeśli strona jest prosta to nie warto używać jQ. (chyba, że ma się chwilowo zapatrywania lenia;) ). Jeśli będziesz mieć zagmatwaną strukturę drzewa to wtedy jQuery jest idealne:) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 230 Pomógł: 3 Dołączył: 8.01.2008 Ostrzeżenie: (10%) ![]() ![]() |
Dzięki za info (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
A jak już poruszyliśmy temat jQuery, to jak powinno się tam deklarować funkcje? normalnie: Kod function costam(argument){ $.ajax({.... } Czy tak (np. na stronie jQuery, w źródle, coś takiego jest): Kod $(function costam(argument){ $.ajax({.... }); Przecież chyba nie ma znaczenia, czy zadeklarujemy funkcje zanim się właduje struktura DOM? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) $()=$(document).ready(function(){}) z tego co czytałem. Ten post edytował Apocalyptiq 22.11.2008, 15:03:24 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 603 Pomógł: 131 Dołączył: 24.07.2007 Skąd: Górny Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Zwykłe funkcje deklarujemy zwyczajnie.
Funkcje które mają działać jako metody obiektu jQuery (głownie pluginy), trochę inaczej (jak? szukać na str. jQ.). Funkcji zdefiniowanej w $() nie użyjesz* w normalnym kodzie. Nie ma ona nazwy, więc się nie da do niej odwołać (Jeśli ktoś wie jak to proszę o info;) ). Ta konstrukcja ze słowem function służy tylko do tego, żeby podać jakiś kod do już gotowej funkcji (tu: do ready). ---- *) Chyba, że napiszesz jakąś normalną funkcję, a później podasz jej wywołanie(?) do $(). Ten post edytował lord_t 22.11.2008, 15:59:18 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 27.09.2025 - 07:14 |