Lebih
Bagaimana cara mengimplementasikan panggilan PUT dengan data JSON menggunakan AJAX dan JQuery?
Saya telah melihat-lihat dan mencoba berbagai metode, tetapi sepertinya tidak dapat meneruskan data aktual ke fungsi controller saya.
Berikut ini beberapa kode:
var URL = "/Timesheet/Timesheet/UpdateEntry";
var dataObject = { 'newWeekEntry': newEntry, 'oldWeekEntry': oldEntry };
alert(JSON.stringify(dataObject));
$.ajax({
url: URL,
type: 'PUT',
data: JSON.stringify(dataObject),
dataType: 'json',
success: function(result) {
alert("success?");
}
});
newEntry
dan oldEntry
keduanya adalah objek.
Baris alert
mengeluarkan output ini (dengan beberapa properti yang dihilangkan, hanya untuk singkatnya):
{"newWeekEntry":{"MondayHours":2,"TuesdayHours":2,"WednesdayHours":5,"ThursdayHours":5,"FridayHours":"4","SaturdayHours":0,"SundayHours":0},"oldWeekEntry":{"MondayHours":2,"TuesdayHours":2,"WednesdayHours":5,"ThursdayHours":5,"FridayHours":2,"SaturdayHours":0,"SundayHours":0}}
Ketika saya men-debug aksi pengendali saya ("UpdateEntry"), dua parameter diisi dengan parameter default kelas TimesheetEntry
(0).
Apakah saya mengoper ini dengan benar?
13
3
Atribut
dataType
hanya digunakan ketika Anda mendapatkan data dari server. Anda harus menetapkancontentType
keapplication/json
ketika mengirim data ke server.Gunakan header:
{"X-HTTP-Method-Override": "PUT"}
dan timpa jenis permintaanPOST
. Ini bekerja pada proyek saya...Ini berhasil untuk saya