javascript - DataTables 动态添加列到表

标签 javascript jquery gridview datatables

我正在使用 DataTables ( datatables.net ) 来显示来自 Ajax 源的数据,但在自定义它时遇到了问题。我想做的一件事是添加一列,这样我就可以为每一行添加一个“编辑”按钮。

示例中最接近的是 here但我无法让它与 ajax 源一起工作。

目前,我正在使用以下代码来显示我的表格:

fnServerObjectToArray = function ( aElements ){
    return function ( sSource, aoData, fnCallback ) {
        $.ajax( {
            "dataType": 'json', 
            "type": "POST", 
            "url": sSource, 
            "data": aoData, 
            "success": function (json) {
                var a = [];
                for ( var i=0, iLen=json.aaData.length ; i<iLen ; i++ ) {
                    var inner = [];
                    for ( var j=0, jLen=aElements.length ; j<jLen ; j++ ) {

                        inner.push( json.aaData[i][aElements[j]] );
                    }
                    a.push( inner );
                }
                json.aaData = a;
                fnCallback(json);
            }
        } );
    }
}

$(document).ready(function() {
    $('#example').dataTable( {
        "bProcessing": true,
        "sAjaxSource": 'get_data.php',
        "fnServerData": fnServerObjectToArray( [ 'username', 'email' ] )
    } );
}); 

最佳答案

为什么不在 aoColumns 中使用 fnRenderFunction?例如:

aoColumns: [ { "bVisible": false} , null, null, null, null,
  { "sName": "ID",
    "bSearchable": false,
    "bSortable": false,
    "fnRender": function (oObj) {
       return "<a href='EditData.php?id=" + oObj.aData[0] + "'>Edit</a>";
     }
  }
]

您可以使用它来格式化服务器端的值。

参见 http://jquery-datatables-editable.googlecode.com/svn/trunk/ajax-inlinebuttons.html 上的类似示例(忽略可编辑插件的具体设置)

关于javascript - DataTables 动态添加列到表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6197642/

相关文章:

javascript - 仅使用 typeahead.js 强制有效输入

javascript - 如何比较两个div的相同数字

JQuery 将新创建的链接分配给变量?

javascript - bootstrap ajax内容重新出现两次

javascript - jQuery 整个页面在某个元素上闪烁

asp.net - 以编程方式在 GridView 中添加和删除凹痕

c# - javascript + asp.net - 从 c# 调用 javascript 函数并传递一个对象

javascript - 使用 webpack 和 two.js 的问题

java - 实现 searchview - gridview 过滤器

c# - Gridview 数据源中的行数