Доброго дня
столкнулся с проблемой имеется поле migx (группа) и в нем вложенный migx (товар) который я вывожу через ajax.
как правило указать &value=`[[+tovars]]` ? в таком виде не работает
ниже привожу код скрипта и сниппета:
<!-- скрипт запроса и обработки -->
<script type="text/javascript">
$(document).ready(function() {
// Вешаем обработчик события "клик" на все ссылки с классом
$(document).on('click', 'a.ajax_link', function(e) {
$('#result').empty();
$('#result').html('<span uk-spinner="ratio: 2"></span>');
// Берем действие из атрибута data-action ссылки
var action = $(this).data('action');
var value = $(this).data('value');
// Ajax запрос к текущей страницы (а на ней наш сниппет) методом post
$.post(document.location.href, {action: action,value}, function(data) {
// Выдаем ответ
$('#result').html(data);
})
e.preventDefault();
})
})
<?php
// Откликаться будет ТОЛЬКО на ajax запросы
if (empty($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') {return;}
// Сниппет будет обрабатывать не один вид запросов, поэтому работать будем по запрашиваемому действию
// Если в массиве POST нет действия - выход
if (empty($_POST['action'])) {return;}
// А если есть - работаем
$res = '';
switch ($_POST['action']) {
case 'tovmodal':
$params = array();
$params['value'] = '[[+tovars]]'; // ДУМАЮ ПРОБЛЕМА В ЭТОМ МЕСТЕ
$params['tpl'] = 'tovars_id';
$params['where'] = '{"state:=":"Да"}';
$res = $modx->runSnippet('getImageList', $params);
break;
}
// Если у нас есть, что отдать на запрос - отдаем и прерываем работу парсера MODX
if (!empty($res)) {
die($res);
}