You should use "iDeferLoading" : 0 in DataTables parameters, when you initialize it:
var table = $("#table").dataTable({"bProcessing": true,"bServerSide": true,"iDeferLoading": 0,"sAjaxSource": service_url,"sServerMethod": "POST", ... ...
(or "deferLoading":0 for newer DataTables versions, 1.10 and above),and then add the event to your button:
$("#button").on("click", function (event) { $('#table').dataTable().fnDraw();});
https://datatables.net/examples/server_side/defer_loading.html