簡體   English   中英

jQuery DataTable - 添加新行,但無法使其可編輯(可編輯)

[英]jQuery DataTable - Add new row works, but not able to make it editable (jeditable)

我有一個PHP頁面,我正在使用DataTable(jQuery)插件來顯示數據庫中的所有數據。

在這里,我想給用戶提供添加新行的選項,即用戶輸入數據的新記錄。 我按照以下示例:

http://www.datatables.net/examples/api/add_row.html

並能夠創建一個新行。

但我完全不確定如何為生成的內容添加“id”屬性,而且,我不確定如何使其可編輯。

截至目前,所有其他字段都可以使用jeditable進行編輯。
代碼如下:

            $(document).ready(function() {
            /* Init DataTables */
            var oTable = $('#example').dataTable({
            "iDisplayLength": 5,
            //"bRetrieve": true,
            "aLengthMenu": [[5, 10, 15, -1], [5, 10, 15, "All"]]
            }
            );


            /* Apply the jEditable handlers to the table */
            $('td', oTable.fnGetNodes()).editable( 'expenseFieldsUpdater.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],
                        "form_id": document.getElementById('formID').value
                    };
                },
                "height": "14px"
            } );
        } );

        var giCount = 1;
        function fnClickAddRow() {
            $('#example').dataTable().fnAddData( [
                ".1",
                giCount+".2",
                giCount+".3",
                giCount+".4",
                giCount+".5" ] );
                    giCount++;
        }

但是,我完全不確定如何使其可編輯。 任何指針都會非常有用。

我在datatables網站上發現了以下帖子,但無法理解如何使它們工作:
http://datatables.net/forums/comments.php?DiscussionID=181

您可以在http://code.google.com/p/jquery-datatables-editable/找到可以幫助您的插件。 該插件增強了標准的JQuery DataTables插件,並處理添加,刪除和編輯操作。 您可以在那里下載HTML示例。

我通常發現在添加或編輯行之后,我需要重新運行$(document).ready事件來裝飾表行。 所以你應該重構一下這個調用:

$('td', oTable.fnGetNodes()).editable()

進入一個單獨的方法,您可以從$(document).ready和fnClickAddRow()調用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM