Zpracování AJAXového signálu bez návratové hodnoty (success)

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

Mám menší problém se zpracováním AJAXových požadavků (používám Nette 0.9). Jedná se o to, že když zavolám handle metodu a ta jen provede nějakou rutinu na serveru (např. aktualizuje databázi), Nette nevrací návratovou hodnotu 200 OK, takže se neprovede success callback v javascriptu. Příklad:

$.ajax({
    url: {link mySignal!},
    data: myData,
    success: myFunction
});

Na serveru data zpracuju takhle:

public function handleAddSampleContacts() {
    $this->doSomething($this->getHttpRequest()->post);
    //$this->getPayload()->result = "ok";
}

Odpověď je 200 OK, ale nespustí se funkce myFunction, která je navázaná na success. Když odkomentuju řádek s payloadem a vrátím nějaká data jako odpověď v JSONu, funkce myFunction se spustí. Tušíte někdo, čem může být problém?

Felix
Nette Core | 1196
+
0
-

Nemuzes pouzit invalidateControl?

Mozna pomuze

public function handleAddSampleContacts() {
    $this->doSomething($this->getHttpRequest()->post);
    $this->sendPayload();
}