⊗jsSpAXFTS 256 of 294 menu

Odesílání formuláře pomocí AJAX a FormData v JavaScriptu

Pomocí FormData lze automaticky odeslat všechna pole formuláře na server. Podívejme se, jak se to dělá.

Předpokládejme, že máme následující formulář, kde mají vstupní pole atributy name:

<form action="" method="GET"> <input name="num1"> <input name="num2"> <input type="submit"> </form>

Pojďme tento formulář odeslat pomocí AJAX. Nejprve získáme odkaz na formulář do proměnné:

let form = document.querySelector('form');

Nyní v těle požadavku jako data zadejme objekt FormData. A samotnému objektu předáme jako parametr odkaz na formulář:

form.addEventListener('submit', function(event) { let promise = fetch('/handler/', { method: 'POST', body: new FormData(this) // předáváme odkaz na formulář }); event.preventDefault(); });

V důsledku toho budeme moci na serveru získat hodnoty vstupních polí podle jejich jmen z atributů name:

export default { '/handler/': function({post}) { console.log(post.num1); console.log(post.num2); return 'data formuláře přijata'; } }

Je dán formulář s pěti vstupními poli, do kterých se zadávají čísla. Odešlete tento formulář na server metodou POST. Nechť server najde aritmetický průměr zadaných čísel a pošle výsledek zpět do prohlížeče.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout