Возможно ли это или я трачу свое время?
Пробовал много вещей.
Прежде всего, у меня есть
$html = listings_swal()
, что составляет
function listings_Swal() {
return '<table id="datatable"><thead><tr><th>Col1</th><th>Col2</th></tr></thead>
<tfoot><tr><th>Col1</th><th>Col2</th></tr></tfoot></table>';
Это просто пустая таблица без содержимого.
Вот моя целевая ссылка для открытия диалога SweetAlert:
<a id="listings">Listings</a>
и мой скрипт:
echo "<script>
$('#listings').on('click', function(){
swal({
title: 'Listings',
html:'" . $html . "',
showCancelButton: false,
showConfirmButton: false,
showCloseButton: true}, function() {
$.ajax({
url: 'listings.js',
dataType: 'script'
})
.done(function(data) {
swal('Deleted!', 'our file was successfully deleted!', 'success');
})
.error(function(data) {
swal('Oops', 'We couldnt connect to the server!', 'error');
});
});
});
</script>";
В моем listings.js
файле
у меня есть стандартный Datatable init
$(document).ready(function() {
$('#datatable').dataTable({
.....
Я пробовал несколько вещей без успеха.
Такие какдобавление скрипта после диалога подсчета конфет
echo "<script>
$('#listings').on('click', function(){
swal({
title: 'Table',
html:'" . $html . "',
showCancelButton: false,
showConfirmButton: false,
showCloseButton: true
})
});
</script>";
echo '<script src="listings.js"></script>';
Я также пытался выполнить возврат php ajax в моем скрипте подсвечивания table.php
, который только что имел echo '<script src="listings.js"></script>';
, который я пробовализменив мою функцию lists_Swal (), чтобы после закрытия </table><script src="listings.js"></script>
был добавлен скрипт.
Это все работает нормально, если оно не находится во всплывающем окне диалога sweetalert2 - и диалог sweetalert действительно работает,но таблица не заполнена содержимым DataTable (просто показаны <table><thead>
и <tfoot>
снет строк таблицы, сгенерированных из DataTables.
Я уверен, что мои сценарии в остальном работают нормально и заполняют строки таблицы, если они не находятся в диалоговом окне sweetalert2 и просто в обычной html-таблице, поэтому я не совсем понимаю, какполучить DataTables, чтобы инициировать загрузку строк таблицы в самом всплывающем окне «сладкое» предупреждение.
Не уверен, что еще я могу попробовать.Это что-то с DOM, не распознающим таблицу для инициализации Datatable?У кого-нибудь есть идеи?
Спасибо!
edit: Чтобы уточнить, как я уже говорил, всплывающее окно sweetalert2 просто не заполняет его строками datatable и не содержит ошибок console / jsчтобы показать, поэтому я не уверен, как отлаживать.