À partir de maintenant, je passe le paramètre avec l'URL dans l'appel ajax de la table de données.
Mais je veux le passer comme méthode POST
, aidez-moi s'il vous plaît en ce qui concerne le passage de paramètres dans la méthode post, voici mon code d'essai:
// 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+''
});
Il suffit de le passer comme un ajax jQuery normal dans POST - fashion.
La structure devrait ressembler à ceci:
ajax: { type: 'POST', url: <path>, data: { your desired data } }
Exemple:
var $table = $('#example').dataTable(
"processing": true,
"serverSide": true,
"bDestroy": true,
"bJQueryUI": true,
"ajax": {
'type': 'POST',
'url': 'getResult.php',
'data': {
formName: 'afscpMcn',
action: 'search',
// etc..
},
}
});
En PHP, accédez simplement aux index POST comme d'habitude (approche simple):
getResult.php
$form_name = $_POST['formName'];
// the rest of your values ...
$("#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
} );
} });
Ceci est un exemple en temps réel. Le aoData contient tous les paramètres requis côté serveur et vous pouvez également définir vos propres paramètres personnalisés.