У меня есть этот код:
$form["noah-search-Container"]['actions'] = [
'#type' => 'кнопка',
'#value' => $this->t('Автобус'),
'#ajax' => [
'обратный вызов' => '::noahSearchQuery',
],
];
$form["ной-таблица-контейнер"] = [
"#type" => "контейнер",
"#атрибуты" => [
"id" => "ной-стол-контейнер"
]
];
$form["noah-table-container"]["accession-table"] = [
"#тип" => "таблица",
"#prefix" => "<div id='page_note_ajax_form'>",
"#суфикс" => "</div>",
"#заголовок" => [
т ("Идентификатор"),
t("Тип материала"),
t("Ученое имя"),
т ("Банк"),
т («Изображение»),
т ("Анадир"),
т("Фича"),
],
"#атрибуты" => [
"класс" => ["result_message"]
]
];
Кнопка генерирует содержимое таблицы с такой формой:
публичная функция noahSearchQuery (массив и $ форма, FormStateInterface $ form_state) {
... некоторые вещи...
$form["noah-table-container"]["accession-table"] = NoahIfapaSearchForm::searchTable();
return $form["noah-table-container"]["accession-table"];
}
В методе searchTable
Я генерирую таблицу таким образом:
общедоступная статическая функция searchTable() {
$ ответ = [];
... какой-то код...
// $accessions является массивом, если ID
foreach ($accessions as $accession_id) {
... Некоторые вещи..
// получить доступ через некоторые вызовы API,
$response[$accession_id]["идентификатор"] = [
"#тип" => "текстовое поле",
"#title" => t("Идентификатор"),
'#title_display' => 'невидимый',
'#default_value' => $присоединение[0]
];
$response[$accession_id]["типо-материал"] = [
"#тип" => "текстовое поле",
"#title" => t("Тип материала"),
'#title_display' => 'невидимый',
'#default_value' => $присоединение[1]
];
$response[$accession_id]["номера-cientf"] = [
"#тип" => "текстовое поле",
"#title" => t("Научное имя"),
"#title_display" => "невидимый",
'#default_value' => $присоединение[2]
];
$response[$accession_id]["банк"] = [
"#тип" => "текстовое поле",
"#title" => т("Банк"),
"#title_display" => "невидимый",
'#default_value' => $присоединение[3]
];
$ответ[$accession_id]["img"] = [
"#тип" => "текстовое поле",
"#title" => t ("Изображение"),
"#title_display" => "невидимый",
'#default_value' => $присоединение[0]
];
$ответ[$accession_id]["добавить"] = [
"#тип" => "текстовое поле",
"#title" => t("Анадир"),
"#title_display" => "невидимый",
'#default_value' => $присоединение[0]
];
$response[$accession_id]["ficha"] = [
"#тип" => "текстовое поле",
"#title" => т("Фича"),
"#title_display" => "невидимый",
'#default_value' => $присоединение[0]
];
}
вернуть $ответ;
}
Но когда я нажимаю кнопку, в таблице ничего не печатается и есть данные для печати.