Cara mengembalikan JSON dari tindakan

Bagaimana cara membuat objek JSON dan mengembalikan JsonResult dari tindakan saya (diminta oleh $.getJSON in Ajax)

Saya menulis ini dalam tindakan saya:

public JsonResult GetStudentInfo(int id)
    {
        var contactInfo = new Movie
        {
            FirstName = "Bob",
            LastName = "Cravens",
            Age = 23
        };
        return Json(contactInfo, JsonRequestBehavior.AllowGet);
    }

dan inilah skrip saya yang terlihat:

$("button").click(function () {
   var url = "/Home/GetStudentInfo";
   $.getJSON(url, { id:10 }, function (data) {
       $("#search").append("<div>" + data.FirstName + "</div>");
   });
});

tapi itu tidak berhasil.


person Black_Hammer    schedule 17.11.2016    source sumber
comment
Apa yang tidak berfungsi? Kesalahan apa yang Anda dapatkan di konsol browser? Apakah Anda benar-benar menekan metode pengontrol?   -  person    schedule 17.11.2016
comment
Harap kirimkan contoh minimal yang dapat direproduksi. Tidak berhasil bukanlah pernyataan yang berguna   -  person mplungjan    schedule 17.11.2016
comment
Saya tidak punya kesalahan   -  person Black_Hammer    schedule 17.11.2016
comment
Apakah ini masuk ke dubug?. Masukkan titik istirahat   -  person Parth Trivedi    schedule 17.11.2016
comment
di konsol saja saya mendapat peringatan ini Penggunaan getPreventDefault() sudah tidak digunakan lagi. Gunakan defaultPrevented sebagai gantinya.   -  person Black_Hammer    schedule 17.11.2016
comment
@Black_Hammer Silakan tulis html Anda juga. Jika jenis tombol Anda adalah kirim, maka Anda harus menggunakan e.preventDefault() di acara click   -  person Parth Trivedi    schedule 17.11.2016
comment
di html saya, saya hanya memiliki elemen ‹div› dan elemen ‹button› di dalamnya.   -  person Black_Hammer    schedule 17.11.2016
comment
Silakan periksa stackoverflow.com/questions/26177305/   -  person Parth Trivedi    schedule 17.11.2016
comment
Harap sertakan file jquery.js di _Layout.cshtml dan kode JS harus ada di dalam $(document).ready(function(){ });. Bekerja.   -  person RonyLoud    schedule 17.11.2016
comment
Tunjukkan html Anda.   -  person    schedule 17.11.2016
comment
ini kode Html saya link   -  person Black_Hammer    schedule 17.11.2016
comment
Cantumkan kode pada pertanyaan! (bukan di komentar, dan bukan gambar). Dan Anda bahkan tidak memiliki elemen dengan id="search"   -  person    schedule 17.11.2016
comment
:)))) ya itu Kesalahan Terima kasih atas bantuan Anda Stephen   -  person Black_Hammer    schedule 17.11.2016


Jawaban (1)


Peristiwa klik tombol Anda tidak diaktifkan. Tidak ada pemilih. Tulis kode Anda berdasarkan id atau kelas tombol. Pastikan juga jquery-{veraion}.js yang diperlukan telah dimuat.

Sesuatu seperti itu.

<input type="button" id="test" value="Click Me" />

dan js Anda:

$(document).ready(function () {
        $("#test").click(function () {
            var url = "/Home/GetStudentInfo";
            $.getJSON(url, { id: 10 }, function (data) {
                $("#search").append("<div>" + data.FirstName + "</div>");
            });
        });
 })

Ini berhasil untuk saya. Silakan periksa.

person Anadi    schedule 25.11.2016