【问题标题】:Populate Custom Caption from Json从 Json 填充自定义标题
【发布时间】:2016-12-26 04:07:32
【问题描述】:

如何使用 json 数据中提供的医院名称和日期填充表格的标题?

** 此处添加预期输出**

json:

{
"sEcho":2,
"iTotalRecords":243,
"iTotalDisplayRecords":243,
"aaData":[
[
"Mark Zuckerberg",
"USA",
"Feb 14, 1943"
],
[
"John Mathew",
"UK",
"Feb 14, 1943"
],
[
"John Mathew",
"USA",
"Feb 14, 1943"
]
],
"Date":"Aug 01, 2016 - Aug 05, 2016",
"hospitallName":"Apollo Hospital Center"
}

--

在我的服务器端,我是这样调用的,

$(document).ready(function() { 
    oTable = $('#report').dataTable({
        "bJQueryUI": true,
        "sPaginationType": "full_numbers",
        "bServerSide": true,
        "bProcessing":true,
        "bFilter":true,
         "oLanguage": {
              "sProcessing": "Please wait..."
         },
        "sAjaxSource": "myDataTableAction.action",
        "aaSorting": [],

    });
    $('td.options span').hide();

    $('<caption/>').html('<h2 style="text-align: center;background-color:#f9b660 !important ; line-height: 45px;">Have to show hosital Name & Date here</h2>').appendTo( '#report' );
});

【问题讨论】:

    标签: json datatable datatables


    【解决方案1】:

    您可以使用ajax 代替sAjaxSource 并使用dataSrc 回调来填充标题。您没有给出任何布局或标记示例,但如果您为相关标题提供id,您可以执行以下操作:

    ajax: {
      url: 'myDataTableAction.action',
      dataSrc: function(json) {
        $('#date_head').text(json.Date)
        $('#hospitalName_head').text(json.hospitallName)
        return json.aaData
     }
    }
    

    查看演示 -> http://jsfiddle.net/zvqdpeky/

    【讨论】:

    • 我正在将“'myDataTableAction.action”传递给struts.xml。以Json格式获取结果,在这种情况下我也可以使用“ajax”而不是“sAjaxSource”?
    • @dya,你可以试试吗? :) sAjaxSource 实际上只是 ajax 速记(如果它是字符串 .i.e url)或对象文字(如果您需要控制 AJAX 请求和响应)的匈牙利符号名称。所以它们是一样的。
    • 如果我使用 ajax ,action 将作为 null 传递,localhost:8080/Hospital/web/…
    • 你使用的是什么版本的数据表?
    • 使用版本 1.9.4
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-12
    • 2019-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多