Jak na flashmessage pri odeslani formulare ajaxem?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- jiri.medved
- Člen | 33
Ahoj,
pri odeslani formulare pomoci ajaxu, se mi nezobrazi flashMessage v pripade potreby
V @layout.latte mam:
{snippet flashMessage}
<div n:foreach="$flashes as $flash" class="flash {$flash->type}">{$flash->message}</div>
{/snippet}
JS:
$('#new-folder form').submit(function () {
loadingAjaxIndicator.show();
var dataString = $(this).serialize();
var newfolder = $('#frmnewfolderForm-newfolder').val();
var hrefaction = $(this).attr('action');
$.ajax({
type : "GET",
data : dataString,
url : hrefaction,
success : function (response) {
$('#imageTable').load(location.href + ' #imageTable', function () {
newFolderDiv.find('#frmnewfolderForm-newfolder').val('');
newFolderDiv.find('form').hide();
$('#createfolder').show();
loadingAjaxIndicator.fadeOut();
});
}
});
return false;
});
V presenteru:
protected function createComponentNewfolderForm()
{
$form = new \Nette\Application\UI\Form;
$form->addHidden('path');
$form->addText('newfolder');
$form->addSubmit('newfoldersubmit', 'Vytvořit složku');
$form->onSuccess[] = callback($this, 'newfolderSubmitted');
return $form;
}
public function newfolderSubmitted($form)
{
$this->flashMessage('Test flashMessage');
if ($this->isAjax()) {
$this->invalidateControl('flashMessage');
}
}
- jiri.medved
- Člen | 33
22 napsal(a):
a jak se ty nová data dostanou do toho snippetu, nikde to v tom ajaxu nevidim… Proč prosím tě nepoužiješ jQuery ajax formuláře z doplňků?
Dekuji moc …
Vyreseno pomoci https://componette.org/search/?… a https://componette.org/search/?…
Editoval jiri.medved (12. 1. 2012 15:28)