Данные JSON из вызова phpFox ajax? - PullRequest
       24

Данные JSON из вызова phpFox ajax?

1 голос
/ 05 декабря 2011

Как вернуть данные JSON в phpFox, ajaxCall?
В phpFox я использую $.ajaxCall('samplemodule.function' 'data=test');

Как вернуть данные JSON? и как обрабатывать эти данные внутри любой функции JS.

Ответы [ 2 ]

2 голосов
/ 20 мая 2012

В файле /module/samplemodule/component/ajax/ajax.class.php создайте функцию с именем function (для вашего примера).

Внутри этой функции используйте эту функцию, чтобы вернуть данные обратно в JS, в которой вы делаете свой вызов ajax:

$this->call('var myJSONObject=' . json_encode('Your Data Here'));

Или отправьте что-нибудь более интересное, вместо data = test, давайте сделаем userId = (их идентификатор пользователя) следующим образом:

$iUserId = Phpfox::getLib('request')->getInt('userId');
$aUser = $aUser = Phpfox::getService('user')->getUser($iUserId);
$this->call('var aUser =' . json_encode($aUser));

Теперь у вас есть aUser, настроенный как объект JSON с информацией о пользователе, загруженной в него.

0 голосов
/ 11 марта 2013

Думаю, проблема в том, что вы не понимаете, как работает вызов ajax.При вызове ajax ваш код JS отправит запрос на сервер и продолжит выполнение оставшегося кода JavaScript независимо от того, что происходит на сервере.Итак, вы должны вернуть код из вызова ajax:

Код JS -> Вызов Ajax -> Процесс на сервере -> Код JS

В этой логике нетпоследний код JS будет вызывать функцию javascript с информацией, взятой со стадии «Процесс на сервере», вы можете вызывать функцию и передавать параметры этой функции, эти параметры могут быть объектами JSON, если хотите.

Я сделал пример того, как сделать это в phpfox (вызов ajax + вызов функции JS с параметром JSON) здесь , надеюсь, это поможет

...