首頁 > 後端開發 > C++ > 如何使用 jQuery Ajax 正確地將物件陣列傳遞到 MVC 控制器?

如何使用 jQuery Ajax 正確地將物件陣列傳遞到 MVC 控制器?

DDD
發布: 2025-01-21 17:31:10
原創
582 人瀏覽過

How to Correctly Pass an Array of Objects to an MVC Controller using jQuery Ajax?

使用jQuery Ajax在MVC中處理物件陣列(PassThing()方法)

在MVC應用程式中,使用jQuery的ajax()函數將物件陣列傳遞給控制器方法可能具有挑戰性。 PassThing()方法期望一個Thing物件的數組,但該數組以null的形式傳入。

問題所在

提供的程式碼初始化了一個Thing物件的數組,並嘗試使用JSON.stringify()將其傳遞給PassThing()方法。錯誤發生是因為傳送到伺服器的資料格式與PassThing()方法所期望的格式不符。

為了解決這個問題,使用JSON.stringify({ 'things': things }) 將陣列轉換為具有「things」屬性的物件。此物件結構與PassThing()方法期望的參數相符。以下是修改後的jQuery程式碼:

<code class="language-javascript">$(document).ready(function () {
    var things = [
        { id: 1, color: 'yellow' },
        { id: 2, color: 'blue' },
        { id: 3, color: 'red' }
    ];

    things = JSON.stringify({ 'things': things });

    $.ajax({
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        type: 'POST',
        url: '/Xhr/ThingController/PassThing',
        data: things
    });
});</code>
登入後複製

其他注意事項

為了確保資料成功傳遞:

  • 在ajax()函數中包含contentType和dataType設定。
  • 在C#控制器中正確定義Thing類別及其屬性。
  • 使用List型別作為PassThing()方法的參數。

以上是如何使用 jQuery Ajax 正確地將物件陣列傳遞到 MVC 控制器?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板