对从Ajax返回的数据使用Jquery方法,不打印数据

Using Jquery methods on Data Returned from Ajax, with out printing out the data

本文关键字:数据 方法 打印 Jquery Ajax 返回 对从      更新时间:2023-09-26

所以我有一个相当独特的情况。我使用JQuery来收集基于两个日期范围的一些数据,在我设置的$data变量(我使用Ajax)中作为响应返回的是一个html表。

现在我不想让用户看到这个表,我想使用这个jquery插件下载该表的CSV文件。问题是,如果该表位于$data内部,并且可以通过Chrom Dev Tools中的"响应"下的"网络"选项卡看到,那么是否可以使用Jquery进行操作?

在我们的内部框架中,我们执行以下操作来获得Ajax数据:

    // The following belongs to a JS class method.
    data = {
        startDate : $('.startDate').val(),
        endDate : $('.endDate').val()
    }
    CT.postSynch('report/payRollReport/downloadPayRoleReport', {data : data}, function(data){
        console.log(data);
    });

我们将一个数据对象传递给Ajax包装器,用一个操作调用一个控制器(在本例中,downloadPayRoleReport转换为ajaxDownloadPayRoleReport()),然后返回一个HTML表,我可以通过console.log(data) 查看该表

我想在data上使用上面链接的插件,然后将这个html表转换为csv并即时下载。

问题是,这能做到吗?

您可以从表中创建一个jQuery对象。然后,您可以对jQuery对象执行任何操作,就像它实际上在DOM上一样。你总是可以把表放在DOM上,也可以放在屏幕外,但我认为任何不接触DOM的机会都应该抓住它

var myTable = $(data);
myTable.mySpecialTableMethodToExportToCSV();