Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mengikat Medan Ditambah Secara Dinamik dengan Betul pada Model Menggunakan Html.BeginCollectionItem?

Bagaimana untuk Mengikat Medan Ditambah Secara Dinamik dengan Betul pada Model Menggunakan Html.BeginCollectionItem?

Barbara Streisand
Lepaskan: 2024-12-05 16:13:11
asal
592 orang telah melayarinya

How to Properly Bind Dynamically Added Fields to a Model Using Html.BeginCollectionItem?

Koleksi Lulus Pandangan Separa Menggunakan Html.BeginCollectionItem Helper

Masalah

Dalam projek yang menggunakan pembantu Html.BeginCollectionItem, medan baharu yang dihasilkan oleh JavaScript adalah tidak mengikat model semasa penyerahan borang. Selain itu, pembantu BeginCollectionItem tidak memaparkan teg tersembunyi untuk medan baharu.

Penyelesaian

1. Cipta Model Paparan:

Tentukan model paparan (cth., CashRecipientVM) untuk mewakili data yang akan diedit, dengan anotasi data yang sesuai.

2. Cipta Paparan Separa:

Buat paparan separa (_Recipient.cshtml) menggunakan pembantu BeginCollectionItem, termasuk label yang diperlukan, kotak teks dan butang padam.

3 . Laksanakan Kaedah untuk Mengembalikan Paparan Separa:

Laksanakan kaedah dalam pengawal untuk mengembalikan pandangan separa (cth., Penerima()).

4. Kemas kini Kaedah GET:

Dalam kaedah GET paparan utama, buat senarai awal model paparan.

5. Kemas kini Paparan Utama:

Dalam paparan utama, gunakan gelung foreach untuk memaparkan objek sedia ada dan tambahkan paparan separa menggunakan bantuan BeginCollectionItem.

6. Laksanakan JavaScript untuk Menambah Item:

Tulis JavaScript untuk menambah HTML bagi model paparan baharu pada borang selepas mengklik butang.

7. Laksanakan JavaScript untuk Memadam Item:

Tulis JavaScript untuk memadam item apabila mengklik butang padam, membuat permintaan AJAX yang sesuai kepada pelayan.

8. Kemas kini Kaedah POST:

Kemas kini borang untuk menyiarkan kembali kepada kaedah yang menerima koleksi model paparan (cth., Cipta(IEnumerable penerima)).

Tambahan Nota:

  • Pastikan skrip untuk menambah item menggunakan URL yang betul untuk kaedah Penerima.
  • Gunakan anotasi data untuk mengesahkan data di sisi klien.
  • Untuk meningkatkan prestasi, pertimbangkan untuk menggunakan rangka kerja knockout.js atau MVVM dan bukannya JavaScript untuk mengikat data.

Atas ialah kandungan terperinci Bagaimana untuk Mengikat Medan Ditambah Secara Dinamik dengan Betul pada Model Menggunakan Html.BeginCollectionItem?. 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