2017-05-08 2 views
0

Ich habe eine Rasierer-Ansicht, die eine Methode auf einem MVC-Controller über Ajax aufruft. Alles funktioniert, außer dass ich nichts zurückbekomme, obwohl ich ein JSON-Ergebnis zurückgebe. Das Element "data" im Erfolgsabschnitt ist nicht definiert.JSON-Antwort zurück vom MVC-Controller von Ajax Anruf

Hier ist ein Ajax:

callback: function(result) { 
    if (result === true) { 
     $.ajax(
      { 
       type: "POST", //HTTP POST Method 
       url: "AddEmployee", // Controller/View 
       data: { //Passing data 
        Name: $("#txtName").val(), //Reading text box values using Jquery 
        City: $("#txtAddress").val(), 
        Address: $("#txtcity").val(), 
        Phone: $("#txtPhone").val(), 
        SSN: $("#txtSsn").val(), 
        success: function (data) { 
         alert(data.ResponseMessage); 
          //$('<div>' + data + '</div>').appendTo('#divConfirm'); 
         } 
        } 
       }); 

Hier ist mein Controller:

[HttpPost] 
    public JsonResult AddEmployee(EmpModel obj) 
    { 
     bool isSaved = AddDetails(obj); 
     Response response = new Response {ResponseMessage = "Success!"}; 
     return Json(response); 
    } 
+1

Ihre 'success' Rückruf Funktion scheint ein Teil des 'data' Objektes zu sein – Phil

+0

** Voting zum schliessen als * typo *** – Phil

Antwort

0

Sie falsch setzen} in Daten, mein Freund:

 Name: $("#txtName").val(), //Reading text box values using Jquery 
        City: $("#txtAddress").val(), 
        Address: $("#txtcity").val(), 
        Phone: $("#txtPhone").val(), 
        SSN: $("#txtSsn").val() }, 
        success: function (data) { 
         alert(data.ResponseMessage); 
          //$('<div>' + data + '</div>').appendTo('#divConfirm'); 
         } 
+0

Vielen Dank Phil! Ich gewöhne mich immer noch daran und ich habe nicht einmal gesehen, dass ich den Erfolgsteil an der falschen Stelle hatte. Das hat es behoben! – CrystalLake62

+0

@ CrystalLake62. Ja, du bist so gut, mein Freund :)) – Tomato32