gpt4 book ai didi

javascript - 如何将相同的请求或捕获响应传递给变量?

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

重新加载表时是否可以捕获来自 DataTables 的响应,或者是否可以使用自己的函数传递 DataTables 请求传递的所有数据(我的意思是过滤器)?

我需要由 SSP 类构建 SQL 查询,然后在我自己的函数中使用它。我想对过滤后的数据执行某些操作,但我需要的数据比表中的数据多得多。

我想到了这样的事情:

var myData = table.ajax("myFileWithModifiedSSP.php").load();

在这种情况下,它将传递所有参数,例如刷新表,但最终它会返回其他内容,而不刷新数据表。

我的第二个想法是仅使用ajax将参数发送到我的文件并执行我需要的操作。像这样的事情:

function myFuncton(){
$.ajax({
url : "myURL.php",
data : DATATABLES_PARAMETERS,
success : function(data){
//do what I need
}
});
}

编辑

我之前没有提到我已经初始化了表,添加了一些自己的过滤器。现在一切都很完美。我唯一需要的是以某种方式获取数据表脚本发送的所有请求参数并将它们用于其他用途。

例如,假设我有名为“导出”的按钮,我使用过滤器和搜索引擎(来自 DataTables)过滤表中的数据,然后将结果放入表中。下一步是单击“导出”,现在我需要先前传递的参数(通过 DataTables)才能在其他脚本中使用它们来对数据执行某些操作。我只需要相同的参数来构建新查询并对数据执行某些操作。

最佳答案

您可以使用ajax.params() ,获取上次 Ajax 请求中 DataTables 提交给服务器的数据。

请参阅此示例:

var table = $('#example').DataTable({
ajax: "data.json",
serverSide: true
});

table.on('xhr', function () {
var data = table.ajax.params();
alert('Search term was: ' + data.search.value);
});

如果使用ajax.params()返回的数据作为$.ajax()data属性的值,您可以得到可以将同一请求提交到不同的 URL,例如:

$.ajax({
'url': 'script.php',
'data': $('#example').DataTable().ajax.params()
});

关于javascript - 如何将相同的请求或捕获响应传递给变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30216936/

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