需要帮助jQuery中的可编辑表(DataTables插件)

时间:2011-07-02 16:39:51

标签: javascript jquery

我正在尝试使用jQuery及其插件DataTables(http://www.datatables.net/release-datatables/examples/api/editable.html)来制作可编辑的表格。

到目前为止,这是我的代码。通过使用js数组中的数据在DIV内生成一个表,它的上半部分非常有用。

然而,我还需要这个表可编辑。我找到了一个示例代码(见下部)但有点无法弄清楚如何将它应用到我的表中?

有什么想法吗?谢谢!

$(document).ready(function() {

            $('#dynamic').html( '<table cellpadding="0" cellspacing="0" border="0" class="display" id="example"></table>' );
            /// create a table within the '#dynamic' DIV

            $('#example').dataTable( {
                "aaData": numbarr,     /////// takes data from the 'numbarr' js array.
                "aoColumns": [
                    { "sTitle": "Country&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" },   //// column names
                    { "sTitle": "Number&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" },
                    { "sTitle": "Tariff ID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" },
                    { "sTitle": "Customer Acc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" },
                    { "sTitle": "Customer Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" },
                    { "sTitle": "Payment Terms&nbsp;&nbsp;" },
                    { "sTitle": "Payout/Call&nbsp;&nbsp;" },
                    { "sTitle": "Payout/Min&nbsp;&nbsp;" },
                ]
            } );

            ///////////////////////////// the code above workd fine!


            ////////////////// this code was taken from an example, not sure how to connect it with my table...
            $('td', oTable.fnGetNodes()).editable( '../examples_support/editable_ajax.php', {
                "callback": function( sValue, y ) {
                    var aPos = oTable.fnGetPosition( this );
                    oTable.fnUpdate( sValue, aPos[0], aPos[1] );
                },
                "submitdata": function ( value, settings ) {
                    return {
                        "row_id": this.parentNode.getAttribute('id'),
                        "column": oTable.fnGetPosition( this )[2]
                    };
                },
                "height": "12px"
            } );
            ////////////////// this code was taken from an example, not sure how to connect it with my table...

3 个答案:

答案 0 :(得分:1)

我已经使用了这个插件http://square-bracket.com/openjs

答案 1 :(得分:0)

我看到的示例表明要初始化表格,如:

$('#example').dataTable(options).makeEditable(options);

话虽这么说,我还没有完成工作。

答案 2 :(得分:0)

这是一个适合我的例子:

$('#tblDataTable2').dataTable({

    "bJQueryUI": true,
    "sPaginationType": "full_numbers",
    "aaSorting": [[ 0, "asc" ]],
    "aoColumnDefs": [
        { "sClass": "center", "aTargets": [ 0, 1 ] }
    ]
}).makeEditable({
    sAddURL:    "Setting?operation=create",
    sUpdateURL: "Setting?operation=update",
    "aoColumns": [
                { placeholder: '' },
                { placeholder: '' }
            ],
});