Ajaxové formuláře
Odesílání formulářů ajaxem s jQuery.
| Verze | 0.1 |
|---|---|
| Download | jquery.ajaxform.js |
| Forum thread | http://forum.nette.org/…-js-s-jquery |
| Autor | Jan Marek |
| Licence | MIT |
Instalace
Stáhněte soubor jquery.ajaxform.js a nalinkujte ho do webu. Skript není na Nette závislý, ale pro jeho správnou funkčnost s Nette frameworkem je potřeba nainstalovat také plugin Ajax s jQuery.
Příklad použití
Odeslání formuláře:
$("form").ajaxSubmit(/* [callback] */);
Odeslání formuláře pomocí tlačítka:
$("form .odesilaci-tlacitko").ajaxSubmit(/* [callback] */);
Zajaxovatění všech formulářů a všech jejich tlačítek na stránce:
// po načtení stránky
$(function () {
// odeslání na formulářích
$("form").submit(function () {
$(this).ajaxSubmit();
return false;
});
// odeslání pomocí tlačítek
$("form :submit").click(function () {
$(this).ajaxSubmit();
return false;
});
});
Pozor, ajaxem se nedají odesílat soubory.
Historie
Připojené soubory
- jquery.ajaxform.js 1 kB
Komentáře 
washo | 2. 9. 2010, 20:27 | question
Lze nejak zamezit aby stejnojmenne hodnoty poli formulare prepisovaly hodnoty parametru action?
fak | 11. 12. 2010, 18:49 | bug
Chci upozornit, že metoda .ajaxSubmit() neodesílá informace o tlačítkách, takže pokud máte více tlačítek na více akcí, tak nebudou fungovat.
fak | 11. 12. 2010, 20:39 | comment
Informace o tlačítkách je třeba namontovat, pokud nemůžete na tlačítka dát .submit() (kvůli live validaci):
tlačítkům namontujete event s přidáním atributu:
`$(„type=submit,type=image“).live(„click“,
function(e){
$(this).attr(„was_clicked_to_submit“,„YES“); });`
za řádek 22:
`var button = $(„was_clicked_to_submit=YES“).eq(0); if(button.attr(„name“) != undefined) sendValuesbutton.attr(„name“) = button.val() || "";`
HosipLan | 23. 2. 2011, 12:38 | comment
feature: https://gist.github.com/840319

hrach | 9. 7. 2010, 15:00 | bug
Pokud chcete používat ajaxové odesílání spolu s jquery live validation, je třeba upravit řádek 30. následovně: