如何使一个ajax请求与keyup事件从输入外的数据表?



我需要在数据表外进行ajax调用。我有一个不在数据表内的输入。基本上,我需要听输入和onkeyup事件,我想让ajax请求我的数据表和饲料与数据返回ajax请求我的表。

这是我的表:

var table = $('#bootstrap-data-table-export').DataTable({
lengthMenu: [[10, 25, 50, -1], [10, 25, 50, "All"]],                
columnDefs: [{
targets: -1,
data: null,
defaultContent: " <button class='btn btn-sm table-button-dark' > <i class='fa fa-archive fa-xs' ></i></button> <button class='btn table-button-dark btn-sm' > <i class='fa fa-eye fa-xs' ></i></button> <button class='btn table-button-dark btn-sm'  > <i class='fas fa-download fa-xs' /></button>"
}],

language: {
lengthMenu: "Sayfa Başına _MENU_ Kayıt",
zeroRecords: "Böyle Bir Kayıt Yok",
info: "_PAGE_ Sayfanın _PAGES_ . Sayfasındasınız",
infoEmpty: "No records available",
infoFiltered: "(Toplam _MAX_ Filtrelendi)",
search: "Ara",
paginate: {
previous: "Önceki",
next:"Sonraki"
}
}
});
这是我的ajax请求:
function getDT(data) {

$.ajax({
method: 'POST',
data: data,
url: '/api/ajax/SeriesList',
}).done(function (result) {
console.log(typeof result);
result = JSON.parse(result);
$('#bootstrap-data-table-export').DataTable().clear();
$('#bootstrap-data-table-export').DataTable().rows.add(result.data).draw();
});
}

我可以改变这段代码中的一切,没关系。我真的需要一个答案。

好了,我解决了这个问题。正如@Bulent所说,我创建了一个函数

function CustomInitTable() {
var table = $('#bootstrap-data-table-export').DataTable({
lengthMenu: [[10, 25, 50, -1], [10, 25, 50, "All"]],
columnDefs: [{
targets: -1,
data: null,
defaultContent: " <button class='btn btn-sm table-button-dark' > <i class='fa fa-archive fa-xs' ></i></button> <button class='btn table-button-dark btn-sm' > <i class='fa fa-eye fa-xs' ></i></button> <button class='btn table-button-dark btn-sm'  > <i class='fas fa-download fa-xs' /></button>"
}],
ajax: {
method: "POST",
url: "/api/ajax/IssuedInvoiceController",
data: RequestObject
},
"bDestroy": true,
language: {
lengthMenu: "Sayfa Başına _MENU_ Kayıt",
zeroRecords: "Böyle Bir Kayıt Yok",
info: "_PAGE_ Sayfanın _PAGES_ . Sayfasındasınız",
infoEmpty: "No records available",
infoFiltered: "(Toplam _MAX_ Filtrelendi)",
search: "Ara",
paginate: {
previous: "Önceki",
next: "Sonraki"
}
}
});

}

然后从searchRequester函数中调用CustomInitTable函数

function searchRequester(id) {
RequestObject[id] = $(`#${id}`).val()

CustomInitTable()
}

搜索请求函数绑定到我的html输入onkeyup事件。我知道这可能不是这个问题的最佳解决方案。如果我找到更好的,我会在这里更新。

重要!你必须添加"bDestroy":true到你的数据表,否则你初始化数据表两次,这是不允许的。

相关内容

  • 没有找到相关文章

最新更新