【问题标题】:Using fnRender with ajax source datatable将 fnRender 与 ajax 源数据表一起使用
【发布时间】:2012-03-15 21:09:33
【问题描述】:

我只是尝试修改其中一个示例来自定义单元格:

var oTable = $('#example').dataTable( {
                "bProcessing": true,
                "sAjaxSource": "sources/deep.txt",
                "aoColumns": [
                    { "mDataProp": "engine" },
                    { "fnRender": function( oObj ) {
                                    return "Test";
                                } },
                    { "mDataProp": "platform.inner" },
                    { "mDataProp": "platform.details.0" },
                    { "mDataProp": "platform.details.1" }
                ]
            } );

其中使用如下来源:

{ "aaData": [
{
    "engine": "Trident",
    "browser": "Internet Explorer 4.0",
    "platform": {
        "inner": "Win 95+",
        "details": [
            "4",
            "X"
        ]
    }
},
...
...

数据显示正确,但我开始收到“DataTables 警告(表 id = 'example'):从第 0 行的数据源请求未知参数 '1'”

我缺少什么吗?或者我应该以不同的方式来做这件事?

【问题讨论】:

  • 您能否在jsfiddle.net 中设置此案例以便我们查看?
  • 我尝试使用 jsfiddle 进行设置,但无法让 json 响应在那里工作jsfiddle.net/uuefn/

标签: json jquery-ui jquery datatables


【解决方案1】:

在官方支持的帮助下,我找到了答案:

需要定义一个附加参数以避免该警报:

{                "sDefaultContent": "",
                 "fnRender": function( oObj ) {
                               return "Test";
} }

http://datatables.net/forums/discussion/9030/using-fnrender-with-ajax-source-datatable#Item_1

【讨论】:

    【解决方案2】:

    你确定你的错误不在这里

                    { "mDataProp": "platform.details.0" },
                    { "mDataProp": "platform.details.1" }
    

    应该是这样的

                    { "mDataProp": "platform.details[0]" },
                    { "mDataProp": "platform.details[1]" }
    

    因为 details 是一个数组?

    【讨论】:

    • 不,只使用那里的数字是完全有效的。
    猜你喜欢
    • 2021-04-06
    • 1970-01-01
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-29
    相关资源
    最近更新 更多