Как показать результаты wpDataTables во всплывающем окне, используя AJAX - PullRequest
0 голосов
/ 23 марта 2020

Я использую wpdatatables для отображения данных.

Я добавил MySQL Запрос в бэкэнд, , и этот запрос имеет 2 параметра Dynami c, например

SELECT some fields 
FROM tbl1 tb1 
JOIN tbl2 tb2 
    ON some conditions 
JOIN tbl3 tb3 
    ON some conditions
WHERE DATE(Date) BETWEEN '%VAR1%' AND '%VAR2%';

wpdatatables Создание шорткода, например [wpdatatable id=some_id],

У меня есть 2 средства выбора даты для даты начала и окончания на веб-интерфейсе.

Теперь мне нужно передать параметр Dynami c, такой как [wpdatatable id=some_id var1="strt_dt" var2="end_dt"]

Итак, чтобы получить strt_dt и end_dt, я должен вызвать AJAX и передать параметры.

Моя проблема в том, что я показываю все эти данные во всплывающем окне.

Я имею в виду, когда пользователь нажимает См. Отчет Будет открыто одно всплывающее окно. Данные также отображаются правильно. Но он показывает без wpdatatables Layout. Это не учитывает wpdatatables JS или CSS

Вот моя AJAX Функция обратного вызова:

 public function get_datatable_data() {
    echo do_shortcode('[wpdatatable id=some_id var1="'.$_POST['strt_dt'].'" var2="'.$_POST['end_dt'].'"]');
    wp_die();
} 

Вот код, в который я добавляю данные:

var params =  {"strt_dt":strt_dt,"end_dt":end_dt,action:"get_datatable_data"}
jQuery.post(ajaxurl,params,function(data){
    if(data){
        jQuery(".some class").empty().append(data);
    }else{
        jQuery(".some class").empty().append("No data Found");
    }
...