gpt4 book ai didi

php - jquery 加载 + 数据表

转载 作者:搜寻专家 更新时间:2023-10-31 21:25:41 26 4
gpt4 key购买 nike

我正在创建一个消息服务网站。应该有一个收件箱按钮,单击它后,将显示消息。我想对表数据使用 DataTables 插件。我在收件箱点击事件上使用 jquery load() 函数动态加载表格,在事件函数的底部我调用了 dataTable() 函数创建表。不幸的是,没有任何反应,只有一个没有 DataTables 功能的简单表格。

这是我的代码:

邮箱.php

<html>
<head>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/jquery.dataTables.min.css">
<link rel="stylesheet" href="css/mailbox.css">
<script src="js/jquery-2.2.2.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script type="text/javascript" src="js/jquery.dataTables.min.js"></script>
<script src="js/mailBox.js"></script>
</head>
<body>
<div id = "nav">
</div>
<div id = "modals">
</div>
<div class="container-fluid">
<div class="row">
<div id="menuColumn">
</div>
<div id ="messageColumn">
<div class="col-md-10">
<div class="panel panel-default">
<div class="panel-body" id="messagePanel">

</div>
</div>
</div>
</div>
</div>
</div>
</body>

邮箱.js

    $(document).on("click", "#sentMenu", function(e){
$("li.active").removeClass("active");
$("#sentMenu").addClass("active");
$('#messagePanel').load('MessageDir/SentItems.php');
$(document).on('click', 'tr' , function (event) {
var reqId = $(this).find('td:last').text();
$('#messagePanel').load('MessageDir/SentItemsDetails.php',{ 'id': reqId });
});
$("#sentItemsTable").dataTable();
});

SentItems.php

echo "<table class=\"table table-hover\" id=\"sentItemsTable\">";
echo "<thead class=\"thead-inverse\">
<tr>
<th>Type</th>
<th>To</th>
<th>Subject</th>
<th>Create date</th>
<th>Status</th>
</tr>
</thead>";
echo "<tbody class=\"table-striped sentItemsTableBody\">";

while($req = mysqli_fetch_array($userReqResult)){
echo "<tr>";
$reqId = $req['id'];

if($req['type']==0){
$sqlMessage = "SELECT * FROM message WHERE idRequest = $reqId";
$messageResult = mysqli_query($db,$sqlMessage);
$message = mysqli_fetch_array($messageResult);

echo
"<td class=\"messageItem\">Message</td>
<td>" . $message['toMail'] . "</td>
<td>" . $message['subject'] . "</td>";

}else if($req['type']==1){
echo
"<td class=\"receiveItem\">Receive</td>
<td>Proxy server</td>
<td>---</td>";

}else if($req['type']==2){
echo
"<td class =\"registerItem\">Register</td>
<td>Proxy server</td>
<td>---</td>";
}
echo "<td>" . $req['createDate'] . "</td>";
if($req['status']==1){
echo "<td>Sent</td>";
}else{
echo "<td>Unsent</td>";
}
echo "<td class=\"hidden\">".$reqId."</td>";
echo "</tr>";
}
echo "</tbody>";
echo "</table>";

有什么问题吗?

最佳答案

您需要在加载表后对其进行初始化。

$('#messagePanel').load('MessageDir/SentItems.php', function(){
$("#sentItemsTable").dataTable();
});

参见 load()获取更多信息。

关于php - jquery 加载 + 数据表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36696091/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com