1

データテーブル jquery でどのプラグインを使用すればよいか混乱しています。私の問題は、すべての問題を解決する答えが見つからないことです(現在、4時間以上苦しんでいます)。この問題がすでに何度も解決されている場合は申し訳ありません...

mysql データベースからの 10000 行を超えるテーブルがあり、特定の列にセルのインライン編集を追加したいので、2 つの既存の方法を見つけました。

  1. http://datatables.net/examples/api/editable.html
  2. http://jquery-datatables-editable.googlecode.com/svn/trunk/inline-edit.html

私の質問は、違いは何ですか? どちらがどの js スクリプトを入力として必要とするか (私は混乱して最後にすべてを追加しました)...いくつかは時代遅れで、最新バージョンではもう機能しないと感じています。または、両方を混ぜているので、最後には何も機能しません。

Jeditable (私の手では機能しません。テーブル内のセルをクリックしても何も起こりません)

$("#example.", oTable.fnGetNodes()).editable( 'php/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": "14px"
                });

編集可能 (クリックすると編集イベントが機能しますが、editable_ajax.php に完全な mysql クエリが含まれている場合を除いて、値はデータベースで更新されませんが、ページはリロードされません)

$('#example').dataTable().makeEditable({
                    sUpdateURL: "php/editable_ajax.php",
                    "aoColumns": [
                        null,
                        {
                            indicator: 'Saving CSS Grade...',
                            tooltip: 'Click to select CSS Grade',
                            loadtext: 'loading...',
                            type: 'select',
                            onblur: 'submit',
                            data: "{'':'Please select...', '1':'Yes','0':'No'}" 
                        }
                    ]
                });

PHP サーバー側

<?php
    echo $_POST['value'].' (server updated)';
?>

最後の質問です。多くの行でデータテーブルをより効率的に処理するものはありますか? (ロードにはすでに30秒かかります)。

4

1 に答える 1

2

次の前提条件のセットアップ手順は、dataTables.editable を機能させるには、jeditable と dataTables の両方が確実に必要であることを示しています。jquery-datatables-編集可能

    <script src="/Scripts/jquery-1.4.4.min.js" type="text/javascript"></script>
    <script src="/Scripts/jquery.DataTables.min.js" type="text/javascript"></script>
    <script src="/Scripts/jquery.jeditable.js" type="text/javascript"></script>
    <script src="/Scripts/jquery-ui.js" type="text/javascript"></script>
    <script src="/Scripts/jquery.validate.js" type="text/javascript"></script>
    <script src="/Scripts/jquery.DataTables.editable.js" type="text/javascript"></script>

また、消去法により、jeditable は dataTables だけで使用できると仮定できます。この例のソースを見ると、dataTables と jEditable だけが使用されていることがわかります。

違いについてはよくわかりませんが、dataTables.editable は editable と dataTable (および jValidate) の間のいくつかの一般的な関数へのインターフェイスを提供して、実装を容易にしていると思います。

このプラグインは、JQuery DataTables、JQuery Editable、JQuery Validation プラグインなどのいくつかのプラグインを統合し、一般的なデータ管理機能を実装します。

于 2012-10-24T17:46:59.483 に答える