Ako spracovať POST dáta odoslané ajaxom do signálu?
- misiak
- Člen | 28
Zdravím,
narazil som na problém. Ak odosielam dáta jQuery metódou post napríklad:
<?php
//v šablóne
<a href="{link delete!, 'id' => 1}" class="ajaxpost" data-test="{ text: 'hahaha'}">send</a>
//to odošlem
$("a.ajaxpost").live("click", function (event) {
event.preventDefault();
$.post(this.href, $(this).data('test'));
});
// v presenteri mám
public function handleDelete($id)
{
Nette\Diagnostics\Debugger::dump($this->getHttpRequest());
$this->terminate();
}
?>
V dumpe nemám žiadné POST dáta, ktoré sa odoslali ajaxom do handlera. Ako sa mám k ním dostať? (ak je to možné) Tu na fóre som sa dočítal, že handle<signal> nevie prijímať POST a v ďalšom threade som sa dočítal, že vie ale nejako sa mi k tomu nedarí dostať. Ak sa to dá? Mohol by niekto sem uviesť príklad ako dostať do aplikácie tie POST dáta a spracovať ich?
Za všetky postrehy budem veľmi vďačný.
Editoval misiak (16. 7. 2011 11:50)
- nanuqcz
- Člen | 822
Ahoj, myslím, že bude problém v tom, že jQuery vezme hodnotu z
data-test
jako string, ne jako JSON.
Tzn rozdíl mezi
<script>
$.post(this.href, "{ text: 'hahaha'}");
</script>
a
<script>
$.post(this.href, { text: 'hahaha'});
</script>
Jak to ale zprovoznit, nevím. Zkus kdyžtak do toho data-test hodit
querystring, třeba to jQuery vezme :-)
data-test="text=hahaha"
.