我有一个基于从MySQL数据库构建的HTML表的bootstrap-table.js表。请参阅代码:为什么我的表没有在ajax调用后更新?
<table id="table2" class="table table-striped table-hover table-no-bordered"
data-toggle="table"
data-search="true"
data-pagination="true"
data-page-size="25"
data-show-refresh="true"
data-url="stemmen.php"
data-side-pagination="client"
data-unique-id="id"
> <thead>
<tr>
<th data-field="id" data-visible="false">ID</th>
<th data-field="timestamp">datum & tijd</th>
<th data-field="email">e-mailadres</th>
<th data-field="stem">stem</th>
<th data-formatter="operateFormatter" data-events="operateEvents"></th>
</tr>
</thead>
</table>
正如您在最后一栏中看到的那样,有一个按钮可以删除该行。这会触发一个ajax脚本。
function operateFormatter(value, row, index) {
return [
'<button class="btn btn-xs btn-danger voteremove"><i class="fa fa-trash"></i></button>'
].join('');
};
window.operateEvents = {
'click .like': function (e, value, row, index) {
alert('You click like icon, row: ' + JSON.stringify(row));
console.log(value, row, index);
},
'click .edit': function (e, value, row, index) {
alert('You click edit icon, row: ' + JSON.stringify(row));
console.log(value, row, index);
},
'click .voteremove': function (e, value, row, index) {
var id = [row.id];
if(confirm("Weet je zeker dat je deze stem wilt verwijderen?")){
var $table = $(this).closest('table').attr('id');
$.ajax({
type: 'POST',
url: 'functions.php?action=removeVote',
data: 'vote_id=' + id,
cache: false,
success: function() {
$($table).bootstrapTable('remove', {
field: 'id',
values: [row.id]
});
$(formMessages).removeClass('alert-danger');
$(formMessages).addClass('alert-success');
$(formMessages).text('succesvol verwijderd');
$(formMessages).show();
},
error: function(){
$(formMessages).removeClass('alert-success');
$(formMessages).addClass('alert-danger');
$(formMessages).text('er is een fout opgetreden!');
$(formMessages).show();
}
});
}
}
};
现在我的问题。 ajax动作被触发并且表现良好,消息被显示,但该行不会从表中删除,除非刷新页面。
感谢您的帮助提前!
进入关于解决你提到我想使一个不起眼的问题和建议,这一问题的细节之前。你为什么从数据库中获得前端代码?那是你能够改变的东西吗?从数据库获取前端代码可能成为一个巨大的可维护性的噩梦。 – univ
因为,由于某种原因,我无法从生成的json文件加载数据,但这是一个不同的问题.. –
这绝对是一个不同的问题,只是试图帮助你避免去一个方向,可能会导致很多头痛。数据和代码是两个独立的东西,但为什么不调用后端API并检索数据,而不是从数据库+代码中获取数据? – univ