Как вывести дочек нужного ресурса modx api + ajax?

120
01 января 2022, 06:20

Что пытаюсь сделать?

Есть дерево

-Родитель1 --дочка1 --дочка2
-Родитель2 --дочка1 --дочка2 --дочка2...

Есть селекты на сайте, в них овер-дофига option, в каждом из которых есть id (id = правильный id ресурса). Эти option подгружаются в селект через pdoMenu. Нужно чтобы при выборе n-ного option в этом селекте, пока что в определенный #div подгружались на Ajax дочки именно выбранного option.

Реализация:

0 Простой вывод ресурсов в select

[[pdoMenu?
&parents=`[[*id]]`
&level=`0`
&limit=`0`
&tpl=`@INLINE <option data-id="[[+id]]" value="[[+id]]">[[+pagetitle]]</option>`
]]

1 Сделал страницу на сайте content.html

2 Сделал для этой страницы пустой шаблон

3 На страницу в содержимое вставил сниппет [[!getContent]]

4 Сам сниппет:

$res = $modx->getObject('modResource', $_POST['id']);
return  $res->getMany('Children');

5 jquery:

$('.inpts select#brand').on('change',function(e){
var id = $(this).find('option:selected').attr('data-id');
$.ajax({
type: "POST",
url: "content.html",
data: "id="+id,
success: function(content){
$(".inpts").html(content);
}
});
});

Что в итоге получаю?

Там где должны выводиться дочки нужного ресурса выводится тупо слово "Array"

Что делаю не так?

Проверил что сие скрипт работает так - вместо getMany('Chidren') указал get('pagetitle') - в итоге выводится правильный заголовок, а вот с дочками беда какая-то

Answer 1

Если надо кому-то.

$res = $modx->getObject('modResource', $_POST['id']);
$id = $res->get('id');
$depth = 1;
$ids = $modx->getChildIds($id, $depth);
$docs = $modx->getCollection('modResource', array(
'id:IN' => $ids
,'alias:!=' => 'f'
));
$output = '';
foreach ($docs as $doc) {
$output .= $doc->get('pagetitle') . '<br/>';
}
return $output;
READ ALSO
Синхронная прокрутка нескольких listbox winforms c#

Синхронная прокрутка нескольких listbox winforms c#

Есть 4 листбокса в winforms, количество айтемов там всегда одинаковое, как сделать синхронную прокрутку с клавиатуры(стрелок), колесика мышки...

142
Проблема с выводом значения по умолчанию

Проблема с выводом значения по умолчанию

Я написал запрос и он работает верно, но когда дело дошло до добавления значения по умолчанию, я получаю ошибку:

66
Передвижение объекта Touch.position

Передвижение объекта Touch.position

Введение: 2D проект, в котором есть два SpriteПервый передвигается в позицию касанию на экран (Touch), Второй же перемещается/отдаляется к Первому

80