วิธีคืนค่า JSON จากการดำเนินการ

ฉันจะสร้างวัตถุ JSON และส่งคืน JsonResult จากการกระทำของฉันได้อย่างไร (ร้องขอโดย $.getJSON in Ajax)

ฉันเขียนสิ่งนี้ในการกระทำของฉัน:

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

และนี่คือสคริปต์ของฉันในมุมมอง:

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

แต่มันใช้งานไม่ได้


person Black_Hammer    schedule 17.11.2016    source แหล่งที่มา
comment
อะไรไม่ทำงาน? คุณได้รับข้อผิดพลาดอะไรบ้างในคอนโซลของเบราว์เซอร์ คุณใช้วิธีควบคุมจริงหรือ?   -  person    schedule 17.11.2016
comment
โปรดโพสต์ตัวอย่างที่ทำซ้ำได้น้อยที่สุด มันใช้งานไม่ได้ ไม่ใช่ข้อความที่มีประโยชน์   -  person mplungjan    schedule 17.11.2016
comment
ฉันไม่มีข้อผิดพลาด   -  person Black_Hammer    schedule 17.11.2016
comment
มันจะไป dubug?. ใส่จุดพัก   -  person Parth Trivedi    schedule 17.11.2016
comment
ในคอนโซลฉันมีคำเตือนนี้ การใช้ getPreventDefault() เลิกใช้แล้ว ใช้ defaultPrevented แทน   -  person Black_Hammer    schedule 17.11.2016
comment
@Black_Hammer โปรดเขียน html ของคุณด้วย หากประเภทปุ่มของคุณถูกส่ง คุณควรใช้ e.preventDefault() ในเหตุการณ์ click   -  person Parth Trivedi    schedule 17.11.2016
comment
ใน html ของฉัน ฉันแค่มีองค์ประกอบ ‹div› และองค์ประกอบ ‹button› อยู่ข้างใน   -  person Black_Hammer    schedule 17.11.2016
comment
โปรดตรวจสอบ stackoverflow.com/questions/26177305/   -  person Parth Trivedi    schedule 17.11.2016
comment
โปรดรวมไฟล์ jquery.js ใน _Layout.cshtml และโค้ด JS จะต้องอยู่ภายใน $(document).ready(function(){ }); มันทำงาน.   -  person RonyLoud    schedule 17.11.2016
comment
แสดง html ของคุณ   -  person    schedule 17.11.2016
comment
นี่คือ ลิงก์โค้ด Html ของฉัน   -  person Black_Hammer    schedule 17.11.2016
comment
ใส่รหัสในคำถาม! (ไม่ได้อยู่ในความคิดเห็นและไม่ใช่รูปภาพ) และคุณไม่มีองค์ประกอบที่มี id="search" ด้วยซ้ำ   -  person    schedule 17.11.2016
comment
:)))) ใช่ มันเป็นความผิดพลาด ขอบคุณสำหรับความช่วยเหลือของคุณสตีเฟน   -  person Black_Hammer    schedule 17.11.2016


คำตอบ (1)


เหตุการณ์การคลิกปุ่มของคุณไม่เริ่มทำงาน ไม่มีตัวเลือก เขียนโค้ดของคุณกับ id หรือคลาสของปุ่ม นอกจากนี้ ตรวจสอบให้แน่ใจว่าได้โหลด jquery-{veraion}.js ที่จำเป็นแล้ว

อะไรแบบนั้น.

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

และ js ของคุณ:

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

มันใช้งานได้สำหรับฉัน โปรดตรวจสอบ.

person Anadi    schedule 25.11.2016