0

DataTables Editor を使用したいのですが、Editor-Server に処理させるのではなく、ポストバックを完全に制御したいです。これを行う方法はありますか?クライアント側の Ajax で URL を指定でき、それがコントローラーにポストバックされます。唯一の問題は、呼び出しからデータを取得する方法がわからないことです。これは Ajax 部分です。

 $(document).ready(function () {
    editor = new $.fn.dataTable.Editor({
        ajax: ({
            url: "/../AnyController/Update",
            dataType: "json",
            contentType: "application/json",
            type: 'POST'
        }),
        formOptions: {
            inline: {
                onBlur: true,
                submit: 'all'
            }
        },
        table: "#timetracker",
        fields: [
            {
                label: "Date1:",
                name: "Date1"
            },
            {
                label: "Comment 1:",
                name: "Comment1",
                type: "textarea"
            }
        ]
    });

そして、これはコントローラの方法です:

[HttpPost]
        public JsonResult Update(EditorReturnData wtd)
        {
            return Json(wtd);
        }

他のさまざまなメソッド シグネチャを使用してみましたが、wtd の値は常に null です。Jsonデータを渡すだけでテーブルをロードするのに問題はありませんが、データテーブルエディタから更新プロセスを引き継ぐ方法がわかりません。

更新が 1 つあります。Get、Post、および Put がすべて同じコントローラー メソッドを使用する方法がわかりませんでした。メソッドは、Post および Put であってもパラメーターを取りません。最後に、エディターがヘッダーでデータを渡していることがわかり、Request.Body でアクセスできることがわかりました。そこから、実際の更新を行っているのは Datatables dll でなければなりません。

4

1 に答える 1