Po odeslani formulare nechci refresh

asinkan
Člen | 38
+
0
-

Ahoj, po odeslani formulare se mi stranka refreshne, ale mám spoustu formularu vytvorenych za pomoci Multiplieru a je otravne neustale scrolovat dolu tam, kde jsem skoncil. Nevite jak se toho zbavit? Flashmessage tam nemam.

<?php

protected function createComponentDayForm()
{
    $info = $this->database->getDayinfo($_GET["childID"],$_GET["year"],$_GET["month"],$dayNumber)->fetch();

    $form = new Nette\Application\UI\Form;
	$form->addText('datumDne', '');
    ...
    $form->addSubmit('send', 'Ulož')
        ->onClick[] = [$this, 'dayFormSucceeded'];
	return $form;
?>

no a i kdyz v dayFormSucceeded nemam nic (zadnej flash ani redirect) tak se mi to po odeslani formulare vrati na zacatek stranky. Nevite, jak se toho zbavit?

<?php
public function dayFormSucceeded($button)
	{

	}
?>

Diky

h4kuna
Backer | 740
+
+1
-
  1. vyvaruj se používání super globálních proměnných typu $_GET, $_POST atd… obcházíš tím bezpečnost, v tvém případě použij $this->getParameter(‚childID‘);
  2. flashmessage nemá vliv na redirect
  3. pokud po zpracování nemáš redirect, tak asi budeš mít něco v presenteru na jiném místě
iguana007
Člen | 970
+
0
-

Refresh se ti udela vzdy, kdyz neodesilas formular Ajaxem…

GEpic
Člen | 566
+
+1
-

je otravne neustale scrolovat dolu – redirect s kotvou… nic?

Matey
Člen | 142
+
0
-

už samotné odoslanie formulara (tlačidlo submit), vyvolá refresh stránky ktorý nechceš

  1. môžeš form odosielať ajaxom (ajax) a tým sa vyhnúť refreshu a teda aj tomu že musíš znovu scrolovať na formulár
  2. nepoužiješ ajax, refresh nastane, ale v metóde na spracovanie pridáš kotvu ktorá ťa znovu nastaví na formulár