当前,我的dataTable的每一行都有一个检查按钮,以标识希望执行更新操作的行。我的dataTable使用了此代码
dblclickMove(itemName: string, ...targets: string[]) {
this[targets[0]] = [
...this[targets[1]].splice(this[targets[1]].indexOf(itemName), 1),
...this[targets[0]]
];
}
标识所有选中的行以更新这些行并将其保存到数据库。 这段代码与我的dataTable一起工作,数据的保存功能也正常工作。但是,在执行保存功能程序之后,dataTable会不断更改其分页并返回到第1页。我试图将这段代码放到我的ajax中。
var a = $('select[name=table_time_records_length]').val();
$('select[name=table_time_records_length]').append("<option id='optioncount' value='365'></option>");
$('select[name=table_time_records_length]').val(365).trigger('change');
我知道这段代码可以在我的某些数据表中正常工作。但是在这种情况下,什么也没有发生... 现在,我目前正在尝试寻找新方法,以防止dataTable刷新其分页并返回到page1。
也许硬编码的JS会有所帮助,但我不知道从哪里开始。
我只发布了影响我的输出的必要代码。
我的代码,用于将数据库中的数据显示到数据表中
"bStateSave": true
我用于保存数据的代码
function refresh_Table(){
$.ajax({
headers:{'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
url: "{{ route('printdate') }}",
method: "GET",
data:{},
success:function(data)
{
$('#table_DTR').html(data);
$('#table_time_records').DataTable({
"serverSide": false,
"retrieve": true,
"bStateSave":true,
"ordering": false
});
},
error: function(xhr, ajaxOptions, thrownError){
console.log(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
}
});
}
我的验证码
$(document).on("click", ".btnApplyAlter", function(){
var a = $('select[name=table_time_records_length]').val();
validation_altered_data();
if(counter_alter_validation == 0)
{
$("select[name=table_time_records_length] option[value='365']").remove();
$('select[name=table_time_records_length]').val(a).trigger('change');
alert("Check the row you want to apply alter");
}
else if(checker_validation == "false")
{
$("select[name=table_time_records_length] option[value='365']").remove();
$('select[name=table_time_records_length]').val(a).trigger('change');
alert(error);
}
else
{
var c = confirm("Apply this alteration?");
if(c == true)
{
$('.reason').prop("disabled", false);
$.ajax({
headers:{'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
url: "{{ route('applyalteration') }}",
method: "POST",
data: $('#alteration_data').serialize(),
beforeSend: function()
{
document.getElementById('loader').style.display = "block";
},
success:function(data)
{
if(data == "w")
{
alert("You don't have schedule for this day!");
$("select[name=table_time_records_length] option[value='365']").remove();
$('select[name=table_time_records_length]').val(a).trigger('change');
$('.reason').prop("disabled", true);
}
else
{
$("select[name=table_time_records_length] option[value='365']").remove();
$('select[name=table_time_records_length]').val(a).trigger('change');
alert("Alteration Applied!");
}
},
complete:function(){
refresh_Table();
document.getElementById('loader').style.display = "none";
}
});
}
else{
$("select[name=table_time_records_length] option[value='365']").remove();
$('select[name=table_time_records_length]').val(a).trigger('change');
}
}
});