为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

PHP
温温酱 2022-01-14 15:50:11
我有一个表单,我想使用 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"];
查看完整描述

1 回答

?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

如果有人需要这方面的帮助。我找到了解决方案。您可以使用相同的数据表获取文件获取表单发布值,而无需再次发布。我不知道这一点。


这是代码:


$('#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();



        }); 


查看完整回答
反对 回复 2022-01-14
  • 1 回答
  • 0 关注
  • 139 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号