я массив поправила, теперь отдельно он работает, но без return $arr;, но если я вставляю его в код и убираю return, то выводится "Нет данных определяющих тип запроса"
Не понял какой массив вы поправили и куда и что вы там вставляете... Вы там говорили, что у вас query.php через include в другом скрипте вызывается. Может для аякса отдельный скрипт сделать?
нет, это в отдельном файле в index, а к нему подключены query.php
query.php как к index подключен? Через include? Сделайте отдельннй php файл, в него втсавьте код, который идет после return $arr; и попробуйте в аякс запросе обращаться уже к этому файлу.
попробовала, выводит "Нет данных определяющих тип запроса"
Убрала все ifы из query.php, оставила только запросы с массивом.
зависимый select стал активным, но выводятся пустые строки
Если оно пишет "Нет данных определяющих тип запроса", то значит переменная $_POST['query'] не определена, что странно. Попробуйте data параметр в ajax записать так: