$(document).on('click', '.filterBtn', function() {
let filter = $('#status').find(":selected").val();
$('#preparingforimport').attr('data-filter', filter)
});
它获取当前过滤器并将其用作另一个下拉列表的数据属性,如果单击该下拉列表,它将执行此代码。
$(document).on('click', '#preparingforimport', function() {
let filter = $(this).data('filter');
if (filter == 'unshipped') {
swal({
title: 'You are about to export shipments',
text: "Do you want to process all the unshipped data exported?",
type: 'warning',
showCancelButton: true,
confirmButtonColor: '#546220',
confirmButtonText: 'Yes',
cancelButtonColor: '#d33',
cancelButtonText: 'No',
}).then((result) => {
if (result.value) {
let tr = $('#ShipmentsDataTable').find('tr');
let shipment = [], a, href, id;
for (var i = 0; i < tr.length; i++) {
a = $(tr[i]).find('td:first-child > a');
href = a.attr('href');
if (href != undefined) {
id = href.split('/')[4];
shipment.push(id);
}
}
$.ajax({
type:'POST',
url:'/shipment/markprocess',
data: {
_token: $("meta[name='csrf-token']").attr('content'),
shipments: shipment
},
success: function (response, textStatus, jqXHR) {
if (response.message) {
themeNotify(response);
$("#status").val("in-process");
$('.filterBtn').trigger('click');
}
$('.buttons-csv').trigger('click');
},
error: function (data, textStatus, jqXHR) {
themeNotify(data);
}
});
}
})
}
else {
$('.buttons-csv').trigger('click');
}
});
问题是当用户选择另一个过滤器并再次单击
.filterBtn
$(document).on('click', '#preparingforimport', function()
在中使用了第一个选定的筛选器属性值
data-filter
总是即使有多少次我选择了另一个过滤器。