带有数据表的外部过滤器表单

我有一个表单,我想使用 Datatables 将所有字段发送到服务器端并过滤数据。


我发现如何使用以下方法发送单个参数:


url: './demo2/contents/orden/get.php',

type: 'POST',

data: function(d) { 

d.comercial = $("#comercial").val(); 

但我怎样才能发送完整的表格,我认为它可以使用类似的东西来完成:


url: './demo2/contents/orden/get.php',

type: 'POST',

data: function(d) { 

var frm_data = $('#searchFrom').serializeArray();

$.each(frm_data, function(key, val) { 

d[val.name] = val.value;

}); 

要获取 get.php 中的参数,我正在使用


$comercial = $_REQUEST["comercial"];


温温酱
浏览 140回答 1
1回答

小唯快跑啊

如果有人需要这方面的帮助。我找到了解决方案。您可以使用相同的数据表获取文件获取表单发布值,而无需再次发布。我不知道这一点。这是代码:$('#kt_search').on('click', function(e) {        e.preventDefault();        var frm_data = $('#searchFrom').serializeArray();        console.log(frm_data);          $.each(frm_data, function(key, val) {        myData[val.name]    = val.value;        });        table.table().draw();        }); 如果您需要发送一个数组,因为您有一个多选字段,您可以使用以下内容。希望它可以帮助某人。$('#kt_search').on('click', function(e) {        e.preventDefault();        var frm_data = $('#searchFrom').serializeArray();        //POST VALUES ARE SENT USING SAME GET FILE NO NEED TO POST AGAIN        var multiple = {};        var i = 0;        $.each(frm_data, function(key, val) {        var str = val.name;         //CHECK IF FIELD NAME FINISHES WITH MULTIPLE        if (str.match("_multiple")){        if (typeof multiple[str] == "undefined") {        multiple[str] = new Array();        i = 0;        }        multiple[str][i] = val.value;                i++;         myData[val.name] = multiple[str];        }else{        myData[val.name]    = val.value;        }        });        table.table().draw();        }); 
打开App,查看更多内容
随时随地看视频慕课网APP