Ajaxform получение переменных
        Привет, подскажите пожалуйста, как можно получить какие-либо переменные через ajaxform, когда использую свой сниппет.
К примеру у меня есть в шаблоне:
    
    
                                                                                
            К примеру у меня есть в шаблоне:
[[!AjaxForm?
     &snippet=`mysnippet`
     &form=`myform`
]]
<div id='result'></div>В сниппете mysnippet следующее:if(isset($_POST['поле1']) && isset($_POST['поле2'])){
   // Не важно откуда берутся эти переменные
   $parametr1 = 'Текст параметра 1';
   $parametr2=  'Текст параметра 2';
    return $AjaxForm->success('Форма обработана');
}Так вот нужно вернуть переменные (parametr1 и parametr2) и записать их в div id='result'<div id='result'>Текст параметра 1 'Текст параметра 2 </div>    Комментарии: 13
                1. В сниппете в функции AjaxForm->success() вторым параметром передавай массив
2. Вешай JS обработчик на событие afComplete, в нем получишь переданный в п. 1 массив, можешь вставлять значения куда угодно.
                    2. Вешай JS обработчик на событие afComplete, в нем получишь переданный в п. 1 массив, можешь вставлять значения куда угодно.
                А можно пример пожалуйста)            
                    
                1)
                    $data = array('param1' => 'value1', 'param2' => 'value2');
return $AjaxForm->success('Форма обработана', $data);2)$(document).on('af_complete', function(event, response) {
    var form = response.form;
    if (response.data !== undefined) $('#html_element').val(response.data.param1);
});            
                Спасибо!            
                    
                А как сделать то же самое, но только использовать ajaxForm вместе с FormIt?
Данный вариант не получается… Пишу в сниппете
                    Данный вариант не получается… Пишу в сниппете
return $AjaxForm->success('Спасибо', $new->toArray());, но ни сообщение ни массив приходят, то есть response.data пустой            
                Нужно смотреть в консоли браузера.            
                    
                Я пробовал, пустой массив…
console.log(response.data), массив пустой. Пробовал точно также, как в вашем примере, не работает…
                    console.log(response.data), массив пустой. Пробовал точно также, как в вашем примере, не работает…
                Имею ввиду консоль в целом. А в частности — вкладку «Сеть». Что приходит от сервера?            
                    
                От сервера приходит 
                    data: []
message: "Спасибо за отзыв!"
success: true Массив пустой, хотя если отправить в лог данные, то все правильно$xpdo->log(xPDO::LOG_LEVEL_ERROR, $AjaxForm->success('Спасибо', $new->toArray())); то есть в data есть данные нужны. Бьюсь который день, не получает…            
                Добрый день. Столкнулся с такой же проблемой. data всегда пустой. Вы как-то решили проблему?            
                    
                И ошибок нет в консоле            
                    
                А подскажи пожалуйста, как лучше запускать сниппет, по данным, которые я получаю из ajaxform, в событии af_complete, например, получил переменную 5 и запустил pdoresources c parrent =5, к примеру через runsnippet            
                    
                В сниппете доступен массив $scriptProperties['fields'] — элементами в нем являются поля формы.
af_comlpte из другой оперы. Это событие появляется в JS в момент получения результата обработки формы от сервера.
                    af_comlpte из другой оперы. Это событие появляется в JS в момент получения результата обработки формы от сервера.
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.