gpt4 book ai didi

javascript - 导出到 ui-grid 中的 csv : exporterAllDataFn fires only when we have more than one page

转载 作者:行者123 更新时间:2023-11-28 04:26:04 25 4
gpt4 key购买 nike

exporterAllDataFn 事件仅在我们有多个页面时触发:当我减小页面大小并且我有两个页面时它会触发,但当我只有一页时它不会触发。我在 exporterAllDataFn 中有一些代码必须是每次运行。有没有任何解决方案或其他方法可以在导出之前运行某些代码?!!

最佳答案

您可以使用它来调用一个新函数,您可以处理 CSV 的下载:

exporterAllDataFn:函数(){

                $scope.downloadCSV();

}

并在这里处理 csv:

$scope.downloadCSV = function () {


paramsObj['query'] = $scope.keyword;

$scope.downloadCSVPromise = Material.query(paramsObj, function (response) {

if (response && response.partSearchList && response.partSearchList.length > 0) {

$scope.noData = false;

$scope.numFound = response.numFound;

**var csv = JSON2CSV(response.partSearchList);**
//window.open("data:text/csv;charset=utf-8," + escape(csv))

if (window.navigator.msSaveOrOpenBlob) {
var blob_ie = new Blob([decodeURIComponent(encodeURI(csv))], {
type: "text/csv;charset=utf-8;"
});
navigator.msSaveBlob(blob_ie, 'FileName.csv');
}

var date = new Date();
var today = date.toString().substr(4,20);
var regex = new RegExp(" ", 'g');
today = today.replace(regex, '_');
var fileNm = 'AGSExtract_'+today+'.csv';

var downloadLink = document.createElement("a");
var blob = new Blob(["\ufeff", csv]);
var url = URL.createObjectURL(blob);
downloadLink.href = url;
downloadLink.download = fileNm;

document.body.appendChild(downloadLink);
downloadLink.click();
document.body.removeChild(downloadLink);

} else {

$scope.noData = true;
}
});

};

以上解决方案适用于服务器端完整数据,如果您使用客户端分页,则检查 JSON2CSV 并传递包含表数据的 $scope 变量。

希望这有帮助:)

关于javascript - 导出到 ui-grid 中的 csv : exporterAllDataFn fires only when we have more than one page,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45049316/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com