防止第二个ajax调用响应

时间:2018-11-13 17:38:11

标签: javascript jquery ajax datatables

jQuery数据表中的

ajax请求在服务器端处理中发出多个请求,而不是一次发出一个。该表在document.ready()上初始化。

接收到响应后,我想中止jquery数据表中的ajax调用。

有什么方法可以阻止响应成功的第二个请求?

document.ready(function() {

        $("#myTable").DataTable({
        "processing": true, // for show progress bar
        "serverSide": true, // for process server side
        "orderMulti": false, // for disable multiple column at once
        "ajax": {
            "url": "/home/LoadData",
            "type": "Get",
            "datatype": "json"
            "data":{ date:'date'},// parameter on controller to filter records 
        },
        "columns": [
                { "data": "ContactName", "name": "ContactName", "autoWidth": true },
                { "data": "CompanyName", "name": "CompanyName", "autoWidth": true },
                { "data": "Phone", "name": "Phone", "autoWidth": true },
                { "data": "Country", "name": "Country", "autoWidth": true },
                { "data": "City", "name": "City", "autoWidth": true },
                { "data": "PostalCode", "name": "PostalCode", "autoWidth": true }
        ]
    });

2 个答案:

答案 0 :(得分:0)

很难看到没有代码,但是如果您对事件对象有一个句柄,则可以执行evt.preventDefault()之类的操作来阻止默认表单提交的发送。

答案 1 :(得分:0)

https://datatables.net/manual/ajax

https://m.datatables.net/forums/discussion/32107/how-to-load-an-array-of-json-objects-to-datatables

您可以通过设置属性

来手动输入
$('#myTable').DataTable( {
    ajax: ...
} );

// or!

$('#myTable').DataTable( {
    ajax: ...,
    columns: [
        { data: 0 },
        { data: 1 },
        { data: 2 },
        { data: 3 },
        { data: 4 },
        { data: 5 }
    ]
} );