Problém s ajaxem (isAjax())

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

Zdravím, mám problém s ajaxem (respektivě potřebuju spíše poradit). Vše se děje skrz modal okno. Pokud formulář odešlu tak se submitne pomocí ajaxu, ale zaroveň se klasicky odešle. Jak udělat aby se klasicky neodeslal? Zkoušel sem přidat třídu ajax formuláři, ale to už mi nezachytí handle. Zkoušel sem i v js submitnout na tlačítko (které je mimo formulář) a to fungovalo uplně v pohodě, akorát to není asi nejlepší řešení, proto se radši ptám jak to dělat tak jak by to mělo být.

šablona

{snippet resultAdd}
	{form addResult}
		<div class="modal-body">
			{input domaci}
			{input hoste}
		</div>
		<div class="modal-footer">
			{input send}
			<button type="button" class="btn btn-default" data-dismiss="modal" id="test">Close</button>
		</div>
	{/form}
{/snippet}
<script>
{include #jsCallback, input => send, link => ajaxResultChange}
</script>
{define #jsCallback}
$('#frm-addResult').on('submit', function() {
    $.nette.ajax({
        type: 'POST',
        url: '{link {$link}!}',
        data: {
            'value': $('#{$control["addResult"]['domaci']->htmlId}').val(),
        }
    });
});
{/define}
public function addResultSucceeded(UI\Form $form){
		$values = $form->getValues();
		if($this->isAjax()){
			$this->redrawControl('resultAdd');
		}
		else{
			$this->redirect('this');
		}
	}

Editoval Lizardor (22. 3. 2016 9:51)

CZechBoY
Člen | 3608
+
0
-

Při odeslání toho formuláře vracej false

$('form').on('submit', function () {
	// muj kod
	return false; // zamezí odeslání formuláře
});