web-dev-qa-db-ja.com

jquery datatableのajax呼び出しでパラメーターを投稿する方法

今の時点で、データテーブルのajax呼び出しでURLと共にパラメーターを渡します。

しかし、私はそれをPOSTメソッドとして渡したいです。postメソッドでパラメータを渡すことに関して誰でも助けてください、私の試用コードは次のとおりです:

// Sending through GET
var $table = $('#example').dataTable( 
    "processing": true,
    "serverSide": true,
    "bDestroy": true,
    "bJQueryUI": true,
    "ajax": 'getResult.php?formName=afscpMcn&action=search&mcn_no='+mcnNum+'&cust_nm='+cust_num+'&emp_id='+emp+''
});
16
chaya

通常のjQuery ajaxのようにPOSTのように渡します。

構造は次のようになります。

ajax: { type: 'POST', url: <path>, data: { your desired data } }

例:

var $table = $('#example').dataTable( 
    "processing": true,
    "serverSide": true,
    "bDestroy": true,
    "bJQueryUI": true,
    "ajax": {
        'type': 'POST',
        'url': 'getResult.php',
        'data': {
           formName: 'afscpMcn',
           action: 'search',
           // etc..
        },
    }
});

PHPでは、通常どおりPOSTインデックスにアクセスします(簡単なアプローチ):

getResult.php

$form_name = $_POST['formName'];
// the rest of your values ...

DataTables手動入力

38
Kevin

あなたはこの方法を試すことができます:

$('#example').dataTable( {
  "ajax": {
    "url": "data.json",
    "data": function ( d ) {
        d.extra_search = $('#extra').val();
    }
  }
});

https://datatables.net/reference/option/ajax.data

0
bharat
$("#tbl").dataTable({
            oLanguage: {
                sProcessing: '<div id="loader"></div>'
            },
            bProcessing: true,
            "bServerSide": true,
            "iDisplayLength": pageSize,
            "sAjaxSource": " /PurchaseOrder/AddVendorItems", // url getData.php etc
            "fnServerData": function ( sSource, aoData, fnCallback, oSettings ) {
                aoData.Push({ "name": "where", "value": ID +" AND ISNULL(IsFinal,0) = "+ ($("#chkFinal").bootstrapSwitch('state') == true ? 1 : 0) });
                aoData.Push({"name": "PackIDFK", "value": $("#PackIDFK").val()}) //pushing custom parameters
                oSettings.jqXHR = $.ajax( {
                    "dataType": 'json',
                    "type": "POST",
                    "url": sSource,
                    "data": aoData,
                    "success": fnCallback
                } );
            } });

これはリアルタイムの例です。aoDataにはサーバー側で必要なすべてのパラメーターが含まれており、独自のカスタムパラメーターをプッシュすることもできます

0
Abdullah Sheikh