Nette ajax – dodatecna validace v javascriptu

krucinal
Člen | 38
+
0
-

Ahoj,
pouzivam nette.ajax.js pro obsluhu ajaxu v nette. Chci udelat formular, na ktery chci nastavit nejaka validacni pravidla. Nette+ajaxova js knihovna umi obslouzit primitivni validace, coz vyuzivam, ale jeste k tomu potrebuji doplnit dodatecnou validaci pomoci javascriptu. Vyresit neco, co nette.ajax.js neumi.

Nevim jakou cestu zvolit a jak na to.

Moje prvotni myslenka byla, ze si vytvorim rozsireni pro ajaxovou knihovnu, ktere umi obslouzit ruzne udalosti procesu zpracovani xhr pozadavku – zvolil jsem si ‚before‘, kde pred odeslanim formulare chci neco otestovat a v pripade, ze se rozhodnu, zabranit odeslani xhr requestu a zobrazeni nejake hlasky.

Neco na tento zpusob:

<script>
				$.nette.ext('validateForm', {
                    before: function (xhr, settings) {

						// validace konkretniho formulare
                        if(tady-potrebuju-zjistit-jaky-formular-byl-odeslan) {
                            if (nejaky-muj-test) {
                                alert({_"nejaka_chybova_hlaska"});
                                tady-potrebuju-zastavit-aby-se-neodeslalo
                            }
                        }
                    }
                });
</script>

Co ale neumim je

  1. Zjistit, jaky formular byl odeslany (mam na strance formularu hodne)
  2. zastavit zpracovani xhr (zabranit odeslani) v pripade, ze se nejsou splnene nejake moje podminky

Poradi nekdo? Ma s tim nekdo zkusenosti?
Mozna je cela moje uvaha blbe a da se to udelat jednoduseji?

Jeste doplnim, ze veci, ktere se mi nativne v nette+ajax nedari validovat a kvuli kterym delam tu obezlicku jsou:

  1. skupina radio buttonu – required alespon jeden (nette mi validaci ignoruje)
  2. CKEDITOR – html/wysiwyg input