如何在成功之前调用javascript函数
我正在使用SpringBoot和jQueryAjax对一些条目进行批量更新以保存条目,我希望在ajax点击如何在成功之前调用javascript函数,javascript,jquery,ajax,datatable,Javascript,Jquery,Ajax,Datatable,我正在使用SpringBoot和jQueryAjax对一些条目进行批量更新以保存条目,我希望在ajax点击success函数之前重新加载datatable jQuery保存功能: function saveBulkUpload() { var form = $('#bulkUploadForm')[0]; var formData = new FormData(form); $.ajax({ url: '/bulkUpload/save',
success
函数之前重新加载datatable
jQuery保存功能:
function saveBulkUpload() {
var form = $('#bulkUploadForm')[0];
var formData = new FormData(form);
$.ajax({
url: '/bulkUpload/save',
method: 'POST',
data: formData,
cache : false,
enctype: 'multipart/form-data',
contentType: false,
processData: false,
}).done(function(data, textStatus, jqXHR){
bulkUploadDataTable.ajax.reload();
});
}
jQuery数据表:
function showDataTable() {
bulkUploadDataTable = $('#bulkUploadDataTable').DataTable({
emptyTable : 'No record of vendor found',
lengthChange : true,
processing : true,
ajax : {
'url' : '/bulkUpload/findAll',
'type' : 'POST'
},
columns : [
{'data' : 'selectedModuleName'},
{'data' : 'fileName'},
{'data' : 'remark'}
],
searching : false,
buttons : ['excel', 'csv', 'pdf', 'copy'],
scrollCollapse: true
});
}
我试过:
//1
$.ajax({
url: '/bulkUpload/save',
method: 'POST',
data: formData,
cache : false,
enctype: 'multipart/form-data',
contentType: false,
processData: false,
beforeSend: function() {
bulkUploadDataTable.ajax.reload();
},
})
及
但两者似乎都不起作用
我只想在ajax的success
函数之前重新加载datatable一次,因为数据库中的值在上传过程中和上传完成后都会发生变化
请在此帮助我…在调用
$之前您是否尝试过调用它。ajax
?@ahwayakchih它将毫无用处,因为在url:'/bulkUpload/save',
之前没有更新哦,对不起。我想您应该在ajax调用更改数据之前更新表。那个么,这是否意味着您希望在数据更改之后,但在。。。在发生什么之前?因为您写了:数据库中的值在上传期间和上传完成后都会发生变化
。这是否意味着您想在ajax调用期间和之后更新表?@ahwayakchih-yup-totalyso我猜您想显示某种进度条或上传的百分比?由于默认情况下,jquery.ajax
是异步的,所以您可以尝试在调用ajax之前启动一段时间间隔,并在成功/错误后停止它,但这有点“hacky”。如果你需要一个进度条,请在
//2
$.ajax({
url: '/bulkUpload/save',
method: 'POST',
data: formData,
cache : false,
enctype: 'multipart/form-data',
contentType: false,
processData: false,
}).always(bulkUploadDataTable.ajax.reload())