Уважаемое сообщество переполнения стека, спасибо, что прочитали мой вопрос!,
В моей среде я использую PHP MVC-Codeigniter, а плагин Tabulator, плагин Tabulator, требует AjaxURL для загрузкиданные в таблицу.
Правильно, когда я получаю данные из db (модель), загружаю в контроллер и печатаю json в контроллере, затем передаю URL контроллера в плагин Tabulator, все работает отлично!
Для того, чтобы у меня была база данных, выберите представление формы, в котором отправьте (POST) входы на этот контроллер, о котором я упоминал выше.
У меня есть третий контроллер с видом плагина табулятора, в котором печатаетсятаблица json
Мне нужно POST-запрос базы данных, выбор формы для контроллера, отправка на контроллер, в котором печатается Json, и загрузка в AjaxURL для загрузки данных в представление плагина Tabulator.
Пожалуйста, не могли бы вы помочь мне!
Я пытался передать переменную результата json с одного контроллера на другой, но он не работает нормально, передавая tгрубый URL.
Это мой контроллер Builder, в котором просто загружается форма выбора базы данных.
function builder()
{
$this->global['pageTitle'] = 'SPED Fiscal : Query Builder';
$data['css'] = array(
'plugins/slimSelect/slimselect.min.css'
);
$data['js'] = array(
'plugins/slimSelect/slimselect.min.js'
);
$this->loadViews("queryBuilder", $this->global, $data);
}
Это мой контроллер запросов, в котором принимаются входные данные формы выбора базы данных, упомянутые ниже.и запросить запрос к базе данных из модели, и, в конце концов, напечатает его.
function query() {
header('Content-Type: application/json');
$parameters = array(
//Primeira linha Principal
'repository' => $this->input->post('query-repository'),
'field' => $this->input->post('query-field'),
// Segunda Linha Filtro 1
'field2' => $this->input->post('query-field2'),
'type' => $this->input->post('query-type'),
'value' => $this->input->post('query-value'),
// Terceira Linha Filtro 2
'field3' => $this->input->post('query-field3'),
'type2' => $this->input->post('query-type2'),
'value2' => $this->input->post('query-value2'),
// Quarta Linha Filtro 3
'field4' => $this->input->post('query-field4'),
'type3' => $this->input->post('query-type3'),
'value3' => $this->input->post('query-value3'),
// Quinta Linha Filtro 4
'field5' => $this->input->post('query-field5'),
'type4' => $this->input->post('query-type4'),
'value4' => $this->input->post('query-value4'),
// Sexta Linha Filtro 5
'field6' => $this->input->post('query-field6'),
'type5' => $this->input->post('query-type5'),
'value5' => $this->input->post('query-value5'),
);
$taskJson = $this->task_model->listQuery($parameters);
print_r(json_encode($taskJson));
}
Это мой контроллер List, в который загружается плагин tabulator, с таблицей в представлении mytask, мне нужно здесь, чтобы получитьданные, которые я запрашивал по методу ниже, отправьте AjaxURL в плагин Tabulator
function list()
{
$this->global['pageTitle'] = 'SPED Fiscal : My Task';
$data['css'] = array(
'dist/css/tabulator/tabulator.css',
'dist/css/tabulator/tabulator_site.css'
);
$data['js'] = array(
'dist/js/tabulator/jquery_wrapper.min.js',
'dist/js/tabulator/tabulator.min.js',
'dist/js/tabulator/tabulator_core.min.js',
'dist/js/tabulator/modules/page.min.js',
'dist/js/tabulator/modules/sort.min.js',
'dist/js/tabulator/modules/select_row.min.js',
'dist/js/tabulator/modules/filter.min.js',
'dist/js/tabulator/modules/ajax.min.js',
'dist/js/tabulator/modules/download.min.js',
'dist/js/tabulator/modules/clipboard.min.js',
'dist/js/tabulator/customMyTask.js'
);
$this->loadViews("mytask", $this->global, $data);
}
Это моя настройка плагина Tabulator
//create Tabulator on DOM element with id "example-table"
var table = new Tabulator("#example-table-sender", {
height: 670, //
clipboard: true,
clipboardPasteAction: "replace",
layout: "fitColumns", //fit columns to width of table (optional)
ajaxURL:"/sped/task/taskJson",
ajaxConfig:"POST", //ajax HTTP request type
ajaxContentType:"json", // send parameters to the server as a JSON encoded string
virtualDom: true,
ajaxProgressiveLoad:"scroll",
pagination:"local",
paginationSize:18,
paginationSizeSelector:[5, 10,18,20, 100, 1000],
placeholder:"No Data has been selected",
autoColumns:true,
});
Мне действительно нужен способ, когда я отправляю запросвыберите форму, отправьте результат json на URL Ajax и загрузите этот плагин таблицы табулятора.
Пожалуйста, не могли бы вы мне помочь?
Большое спасибо.