Zabránit validaci při NEodesílání formuláře

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
TortilMan
Člen | 1
+
0
-

Dobrý den,
narazil jsem na menší problém. Manuálně vykresluji formulář.
Uvnitř je kolonka pro ‚URL‘ a pod ním zvlášť tlačítko, které vezme hodnotu kolonky pro URL a ajaxově odešle na server.
To tlačítko NEodesílá formulář, protože to není submit, na to je tam jiné tlačítko.
Problém je, že když uživatel zmáčkne tlačítko pro validaci URL, tak se mi vyskočí alerty, které validují formulář, ale akce se provede. Dá se to nějak vypnout?

Editoval TortilMan (26. 7. 2017 21:38)

Ot@s
Backer | 476
+
0
-

Nevím, jestli jsem Tvůj problém správně pochopil, ale mělo by stačit přidat stopPropagation() na konec funkce, kde ajaxem posíláš ono URL na server.

$('button').on('click', function(e) {
	$.ajax( /* ... obsluha ajax volani */ );
    e.stopPropagation(); // zabran tl. v odeslani obsahu formulare
});
  • button s odesláním URL by měl mít nastavenou vlastnost setValidationScope(FALSE).

Editoval Ot@s (27. 7. 2017 11:09)