Mēs runājām par GET pēdējā videoklipā, taču POST nepievērsām pietiekamu uzmanību. Tāpēc es domāju, ka mēs to darīsim šeit. Lielā atšķirība no POST ir tā, ka gandrīz vienmēr jums ir jānodod dati kopā ar pieprasījumu. Šiem datiem var būt dažādas formas, taču tas var būt tikai objekts, kas jums ir apkārt. Sintakse ir arī vienkārša:
$.post( "/data/process.php", ( name: "Susan", job: "Writer" ) function(data, textStatus, jqXHR) ( // success ) );
Ievērojiet otro parametru, kas ir datu objekts (būtībā JSON). Šie dati var būt gandrīz jebkas (ieskaitot virkni). Jums tas jānodod tādā veidā, kas ir noderīgs jūsu aizmugurē.
Atpakaļ uz mūsu veidlapas piemēru no pēdējā videoklipa. Ko darīt, ja vēlaties nodot visus datus no visas veidlapas? Jūs arī nevēlējāties atjaunināt JavaScript, kad mainījusies forma. jQuery to atvieglo ar serialize () metodi. Vienkārši izsauciet to pašā formas elementā:
$("#my-form").serialize();
Tas izskatīs visu veidlapu un izveidos vaicājuma virkni no katras formas nosaukuma. Tad jūs varat to izmantot kā datus, kurus esat pagājis, kad $ .post ().
$("#my-form").on("submit", function() ( $.post( "/", $("#my-form").serialize(), function(data, textStatus, jqXHR) ( console.log("success"); ) ); ));
Skatiet Chris Coyier (@chriscoyier) Pen CtoEg vietnē CodePen