Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Meluluskan Susunan Objek kepada Pengawal MVC Menggunakan jQuery AJAX?

Bagaimana untuk Meluluskan Susunan Objek kepada Pengawal MVC Menggunakan jQuery AJAX?

Patricia Arquette
Lepaskan: 2025-01-21 17:17:14
asal
855 orang telah melayarinya

How to Pass an Array of Objects to an MVC Controller Using jQuery AJAX?

Menggunakan jQuery AJAX untuk Menghantar Array Objek kepada Pengawal MVC

Apabila menghantar tatasusunan objek ke pengawal MVC menggunakan kaedah ajax() jQuery, masalah biasa ialah menerima nilai null untuk tatasusunan dalam pengawal. Ini boleh berlaku walaupun apabila parameter pengawal ditakrifkan dengan betul sebagai List<T>.

Penyelesaian melibatkan dua pelarasan utama:

  1. Nyatakan Jenis Data JSON: Panggilan ajax() mesti secara eksplisit menetapkan kedua-dua contentType dan dataType kepada 'application/json; charset=utf-8'.

  2. Sirikan Data dengan JSON.stringify(): Tatasusunan objek JavaScript perlu ditukar kepada rentetan JSON menggunakan JSON.stringify(). Yang penting, rentetan ini harus merangkum tatasusunan dalam sifat (cth., 'benda').

Berikut ialah kod yang diperbetulkan yang melaksanakan perubahan ini:

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

    const data = JSON.stringify({ things: things });

    $.ajax({
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        type: 'POST',
        url: '/Home/PassThings',
        data: data,
        success: function () {          
            $('#result').html('"PassThings()" successfully called.');
        },
        error: function (response) {          
            $('#result').html(response.responseText); // Display error details
        }
    }); 
});</code>
Salin selepas log masuk

Dan kaedah pengawal C# yang sepadan:

<code class="language-csharp">public void PassThings(List<Thing> things)
{
    // Access the 'things' array here
}

public class Thing
{
    public int Id { get; set; }
    public string Color { get; set; }
}</code>
Salin selepas log masuk

Dengan mengikuti langkah ini, anda akan berjaya menghantar tatasusunan objek ke kaedah pengawal MVC anda melalui jQuery AJAX. Perhatikan perubahan daripada failure kepada error dalam panggilan AJAX untuk pengendalian ralat yang lebih baik, memaparkan teks respons untuk tujuan penyahpepijatan.

Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Susunan Objek kepada Pengawal MVC Menggunakan jQuery AJAX?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan