bootStrap table里使用formatter和events作编辑和删除操作后,需要刷新数据。但会自动返回到第一页,现在的需求是:刷新数据,返回到当前页。
只需要在时间函数里调用$("#proTable").bootstrapTable("refresh");
就可以。
这里展示我的代码:
//初始化表格$("#proTable").bootstrapTable()函数里的column项:
columns: [
{
title: '地区',
field: 'project_area',
sortable: false,
align: 'center',
},
{
title: '创建日期',
field: 'create_date',
sortable: false,
align: 'center',
},
{
title: '操作',
field: 'operate',
align: 'center',
events: operateEvents,//给按钮注册事件
formatter: addFunctionalty//formatter 代表菜单,可以设置图标,button,链接
},
]
这是设定的按钮和相应按钮注册的事件
//这段必须放在表格初始化之前。
//1.添加菜单
function addFunctionalty(value, row, index) {
return [
'',
'',
].join('');
}
// 2.添加事件
window.operateEvents = {
'click #editBtn': function (e, value, row, index) {
showEditPage(row.id);
}, 'click #delBtn': function (e, value, row, index) {
deletePro(row.id);
}
};
举例子,按删除按钮调用deletePro()函数后,deleltePro函数调用成功时加上$("#proTable").bootstrapTable("refresh");
就可以返回原页面并刷新
//删除项目
function deletePro(proID) {
var index = layer.confirm("是否删除?", {icon: 3, title: "提示"}, function () {
$.ajax({
url: "delete",
type: "post",
data: {id: proID},
success: function () {
layer.close(index);
//下面这句话是重点!!!!!!
$("#proTable").bootstrapTable("refresh");
},
error: function () {
alert("无法删除!")
},
})
})
}
在网上找了很多方法,都没能解决,特此记录