[Mvc,Ajax]serialize two forms 以及「RequestVerificationToken」設定
當頁面設定的越來越複雜的時候,我們可以在一次的送出中,需要使用到多張表單的內容,這時候我們可以使用JQuery的「serialize()」來取得多張表單的內容。
實作:
1.先說明一下我們的POST Action所想取得的參數內容:
(1)Action:
我們有一個POST Action「TestPost」使用的模型是「TestMixModel」
(2)模型架構:
我們有一個表單「A」內容binding了List<TestModel>「datas」所需的資料;一個表單「B」內容包含了有兩個字串「Key」「Test」所需要的資料內容。
因為我們「POST Action」有用[ValidateAntiForgeryToken]防偽,所以需要加(48行)的"RequestVerificationToken",至於兩個表單的合併我們可以用 $('#A,#B').serialize()來達成(47行)
code
function PostFunc() { $.ajax({ type: "POST", url: $('#TestPostUrl').val(), data: $('#A,#B').serialize(), headers: { 'RequestVerificationToken': $("input[name='__RequestVerificationToken']").val() }, success: function (response) { }, error: function (e) { }, complete: function () { } }); }
留言
張貼留言