【发布时间】:2018-04-16 20:26:11
【问题描述】:
在我的 Ajax 调用成功后,我想使用从我的 php 部分返回的新值重新加载我的引导表。
<table id="gelirtableid" data-toggle="table" data-url="gelir-getdata.php" data-classes="table table-hover" data-striped="true"
data-pagination="true" data-page-list=[20, 40, 75, 100] data-search="true">
<thead>
<tr >
<th data-sortable="true" data-field="tarih">Tarih</th>
<th data-sortable="true" data-field="Toplam">Toplam</th>
</tr>
</thead>
</table>
我从 mysql 获取数据的 php 脚本
<?php
include "dbcon.php";
if($_POST["gelirtablosecimi"]){
$gelirtabloadi = $_POST["gelirtablosecimi"];
$_SESSION["gelirtabloadi"] = $gelirtabloadi;
}
$gelirtabloadi = $_SESSION["gelirtabloadi"];
$gelirgunluktoplam = $db->prepare("select tarih, hasilat + visa + butce_ici + hisse_satis + sosyal_konut + elektrik + haberlesme + iller_bank + diger AS Toplam from $gelirtabloadi");
$gelirgunluktoplam->execute();
$results = $gelirgunluktoplam->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($results);
echo $json;
?>
还有我的 Ajax 调用
$("#gelirgetir").click(function() {
var gelirtablosecimi = $("#select1").val();
if (gelirtablosecimi) {
$.ajax({
type: "POST",
url: "gelir-getdata.php",
data: {
"gelirtablosecimi": gelirtablosecimi
},
success: function(result) {
notifyUser('success', 'Başarılı!', 'Tablo başarıyla güncellendi');
location.reload();
},
error: function(result) {
notifyUser('error', 'Hata', 'error');
}
});
} else {
notifyUser('info', 'Dikkat', 'Tablo seçimi yapmadınız!');
}
});
我是 Ajax 调用的新手,可能问题出在我的 ajax 部分。
如您所见,通话成功后我正在处理location.reload();。我尝试重新加载 .container 和 #gelirtableid 但对我没有任何帮助。基本上,当我按下#gelirgetir 按钮时,它会更新我的一个会话值,而我的表取决于该会话值。会话值更改后,如果我重新加载页面,则会显示新值,但我必须强制刷新页面。我只想刷新表格。有什么建议吗?
【问题讨论】:
-
所以,您所做的只是重新加载窗口。这实际上不会做任何事情。如果你打算使用 AJAX 和 jQuery,你可以清空表,然后重新加载解析的 json 数据。
-
这是有道理的。我怎么能这样实现?
标签: php jquery ajax bootstrap-table