在从Ajax返回的数据上使用Jquery方法,而不打印出数据

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

现在我不希望用户看到这个表,我想使用此jquery插件用于下载该表的CSV文件。 问题是,如果表位于 $ data </ code>内并且可以通过Chrom Dev Tools中的网络选项卡看到,在Response下,是否可以使用Jquery操作?</ p> \ n

在我们的内部框架中,我们执行以下操作来获取Ajax数据:</ p>

  //以下属于JS类方法。
data = {

startDate:$('。startDate')。val(),
endDate:$('。endDate')。val()
}

CT.postSynch('report / payRollReport / downloadPayRoleReport', {data:data},function(data){
console.log(data);
});
</ code> </ pre>

我们将数据对象传递给Ajax 包装器,用一个动作调用一个控制器(在这种情况下 downloadPayRoleReport </ code>转换为 ajaxDownloadPayRoleReport()</ code>),然后返回一个HTML表,我可以通过 console查看 .log(数据)</ code> </ p>

我想在 data </ code>上使用上面的链接插件,然后将这个html表变成csv和即时下载。 </ p>

阙 这可以吗?</ p>
</ div>

展开原文

原文

So I have a rather unique situation. I am using JQuery to gather some data based on two date ranges, what is returned as a response in the $data variable (I am using Ajax) I have set, is a html table.

Now I don't want the user to ever see this table, I want to use This jquery plugin to download the CSV file of that table. The question is, if the table sits inside of a $data and can be seen via the network tab in Chrom Dev Tools, under Response, is it possible to be manipulated with Jquery?

In our inhouse framework, we do the following to get Ajax Data:

    // 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);
    });

We pass a data object to our Ajax wrapper, call a controller with an action (in this case downloadPayRoleReport translates to ajaxDownloadPayRoleReport()) which in turn returns an HTML table, which I can view via console.log(data)

I want to use the above linked plugin on data to then turn this html table into a csv and instant download.

Question is, can this be done?

dqh1992
dqh1992 请参阅链接插件以获得进一步说明。
接近 7 年之前 回复

1个回答



您可以从表中创建jQuery对象。 然后你可以像jQuery对象那样对它做任何事情,如果它实际上在DOM上。 您可以随时将表放在DOM上,但我认为您有任何机会不得触摸您应该接受的DOM。</ p>

  var myTable = $( 数据); 

myTable.mySpecialTableMethodToExportToCSV();
</ code> </ pre>
</ div>

展开原文

原文

You can create a jQuery object from the table. Then you can do anything to the jQuery object just like you could if it were actually on the DOM. You can always put the table on the DOM as well off screen, but I think any chance you have to not touch the DOM you should take it.

var myTable = $(data);

myTable.mySpecialTableMethodToExportToCSV();

douxing2652
douxing2652 NP。 没有这个小小的洞察力,我无法告诉你我有多久。 来得非常方便。 请享用。 :)
接近 7 年之前 回复
dongtang1909
dongtang1909 这是非常棒的谢谢。
接近 7 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐