3

私はデータテーブルエディタを使用しています。編集してサーバーに投稿しようとすると、行が消え続けます。ページを更新すると、実際に更新されたデータが表示されます。

これが私のコードスニペットです。

var editor = new $.fn.dataTable.Editor({
    ajax: "/ajax/clips/edit",
    table: "#clips_table",
    idSrc: "id",
    fields: [
        {
            label: "Id",
            name: "id",
            type: "hidden"
        },
        {
            label: "Player",
            name: "player",
            type: "select",
            options: [
                { label: "Rooney", value: "Rooney" },
                { label: "Bale", value: "Bale" }
            ]
        }
    ]
 },
     editorOpenValues;

 editor.on('open', function() {
     editorOpenValues = JSON.stringify(editor.get());
 })
 .on('preBlur', function () {
     if (editorOpenValues !== JSON.stringify(editor.get())) {
         this.submit();
     }
 });

 $('#clips_table').DataTable({
     dom: "lfrtip",
     order: [[2, "asc"]],
     columns: [
         {data: "id"},
         {data: "name"},
         {data: "start"},
         {data: "stop"},
         {data: "player"}
     ]
 });

 $('#clips_table').on('click', 'tbody td.player', function () {
     editor.inline(this);
 });

サーバー側スクリプトが返す JSON データは次のとおりです。

{
    "data": {
        "0": {
            "id": "322",
            "name": "Scoren 001",
            "start": "00:11",
            "stop": "00:31",
            "player": "Rooney"
        }
    }
}

このエラーの考えられる原因は何ですか?

4

1 に答える 1

2

最後に、私はそれを理解しました。

バージョンの互換性を確認するのをほとんど忘れていました。私はデータテーブルエディタにv1.5.1を使用していました。v1.5.4(最新のもの)にアップグレードしたらエラーはなくなりました。

学んだ教訓!- 迷惑なエラーが発生した場合は、最初にバージョン チェックを行います。

于 2016-01-11T18:08:19.350 に答える