SPEAKER 1: Teraz v tomto poslednom príklade, Pripomínam, že sme sa striedajú niektoré JavaScript kód vnútri môjho HTML, konkrétne, vnútri hodnoty atribút s názvom On Odoslať pre tento tag formulára. Teraz pre malé strany, to nie je tak veľký problém. Ale ako webové stránky dostane dlhší a viac komplexné, jednoducho uvedenie svojho JavaScript kód sem a tam vo vnútri z hodnoty atribútov nie je Najlepší dizajn. Najlepšie, keby sme faktor, ktorý, a aspoň dať dovnútra tag script centrálne. Ako to urobiť? No poďme sa vrátiť k môjmu tagu form a najprv odstrániť tento atribút a jeho cenia úplne. Potom tu, skôr než definovať funkcie tzv Greet, poďme visieť na na riadok kódu, ktorý nakoniec sme bude stále chcieť spustiť a nahradiť funkcie Greet nasledovne. Document.get prvku ID citovať koniec citátu demo - kde demo, odvolanie, je jedinečný Identifikátor pre samotný formulár - bodka na odoslať, ktoré pripomínajú je názov z obslužnej rutiny udalosti, v ktorom máme záujem. A poďme priradiť, že na predloženie psovoda hodnota, ktorá je v skutočnosti pracovať sám. Teraz si všimnúť, že nie som v skutočnosti volanie funkcie tady. Ja namiesto toho definuje anonymné, inak známy ako funkcia lambda, určením medzi týmito zložených zátvoriek banda kód, ktorý by mal skutočne vykonaný. Konkrétne sa jedná o kód, ktorý by som rád vykonávať je, že línia, ktorá som mal pred, a potom dodajme k tomu return false tak, že táto forma nie je nakoniec predložený do konca vzdialený web server v tradičným spôsobom. Poďme sa teraz tento súbor uložiť, otvoriť ho v prehliadači, a uvidíme, čo sa stane. http://localhost/dom-1.html. Poďme sa teraz zadajte svoje meno, David, Odoslať. A zdá sa, nič sa nestalo okrem URL mojej stránky Zdá sa, že sa zmenili, ako by bola forma vlastne predložený do rovnakého súboru. A teraz, prečo by to mohlo byť? No ja potrebovať viac informácií. Tak poďme do toho a otvoriť Chrome je Nástroje pre vývojárov, takže môžem skutočne pozrite sa na konzolovom okne vidieť či som urobil niečo zle. Môžem pristupovať, že cez niekoľko spôsobov. Jedným z nich je prostredníctvom tejto ponuky tu, potom v menu Nástroje, potom dole na Nástroje pre vývojárov. A všimnite si tu v záložke Console, tam je nezachytené chyby typu, nemôže nastavte vlastnosť na odoslať null. A teraz, prečo by to mohlo byť? No späť do zdrojového kódu tu, oznámenia že na submit Myslím, že je vlastnosť prvku, ktorého jedinečný identifikátor je demo. Prvok, je opäť len uzol v strome. Takže sa zdá, že môj prehliadač nie je myslím, že tento prvok alebo uzol existuje ešte. A skutočne, to nie je. Pripomeňme, že webová stránka je analyzovaný alebo čítať o webovom prehliadači, zhora nadol, zľava doprava. A tak, keď kód JavaScript je stretol, typicky je to popravený hneď. Ale v tomto prípade sme sa ani nedostal ešte k časti dom, HTML, v ktorej formulár s jedinečným Identifikátor demo bol vyhlásený. A tak sa snažíme vykonať my JavaScript kód pred týmto uzlom aj existuje v strome, ktorý, samozrejme, je problematické, pretože potom, iste, prvok sám o sebe bude mať hodnotu null v tomto okamihu. Tak ako to opraviť? No máme niekoľko riešení. Ale skúsme najjednoduchšie premiestnením môj skript tag z hlavy označiť k môjmu telu, ale konkrétne, k spodnú časť tela mojej stránky tak, , Že je to iba v uzloch a otázky. Konkrétne, poďme označte a znížiť open tag a zavrieť tag pre tento scenár a premiestniť, že celý blok kódu na koniec súboru tu. Teraz to nie je nevyhnutne najčistejšie navrhnúť, ale aspoň to bude vynútiť správne poradie operácií. Poďme súbor uložte a znovu vo svojom prehliadači. Poďme znova načítať stránku, re-vstup moje meno, a tam, Hello David je späť.