JQuery JTable填充表,包含来自ajax调用的记录

时间:2017-07-25 17:36:43

标签: jquery jquery-jtable

我想用ajax调用的记录填充jTable。 记录采用JSON格式,如下所示:

 $("#btnSearchOffer").click(function () {

    $.ajax({
      method: 'post',
      url: '/SalesOfferInvoiceDeliveryNote/SearchOffers/',
      data: {
        cORAC_NUM: $("#inputORAC_NUM").val(),
        cORAC_DAT_FROM: $("#inputORAC_DAT_FROM").val(),
        cORAC_DAT_TO: $("#inputORAC_DAT_TO").val(),
        cORAC_STA: $("#selectORAC_STA option:selected").val(),
        iACCO_KEY: $("#hiddenACCO_KEY").val(),
        iUSER_KEY: $("#hiddenUSER_KEY").val()        
      },
      success: function (response) {

        if (response.Result === "OK") {
          //here I would like to fill jTable with data (what I've tried here 
          //it's not working):
          $('#tblOffers').jtable().listAction = response;
        }
      },
      error: function (response) {
        alert(response);
      }
    });

  });

进行通话的功能:

 $('#tblOffers').jtable({
    title: 'Pregled ponudb',
    paging: true,
    pageSize: 20,
    sorting: true,
    defaultSorting: 'cORAC_NUM DESC',
    actions: {
      listAction: "/SalesOfferInvoiceDeliveryNote/SearchOffers/"
    },
    messages: {
      serverCommunicationError: 'Napaka!',
      loadingMessage: 'Nalagam...',
      noDataAvailable: 'Ni podatkov!'
    },
    fields: {
      cORAC_NUM: {
        key: true,        
        title: 'Št. ponudbe'
      },
      cORAC_DAT: {
        title: 'Datum'
      },
      cACCO_NME: {
        title: 'Kupec'
      },
      ORAC_GRO_SUM: {
        title: 'Za plačilo'
      }
    }
  });

我需要按下按钮来填充jTable,因为来自文本字段的所有参数都需要包含在ajax调用中:

表格如下:

{{1}}

1 个答案:

答案 0 :(得分:2)

使用load方法,您可以将数据发送至listAction。以下是示例(asp.net web form c#)代码。

客户方:

//Re-load records when user click 'Search Offer' button.
$('#btnSearchOffer').click(function (e) {
    e.preventDefault();
    $('#tblOffers').jtable('load', {
        cORAC_NUM: $("#inputORAC_NUM").val(),
        cORAC_DAT_FROM: $("#inputORAC_DAT_FROM").val()
    });
});

在服务器端,您可以接收数据:

[WebMethod(EnableSession = true)]
public static object SearchOffers(string cORAC_NUM, int cORAC_DAT_FROM, int jtStartIndex, int jtPageSize, string jtSorting)
{
    //handle null for all parameters
}

我没有添加你的所有参数。希望你能理解代码。如果您需要任何帮助,请告诉我。