2016-10-21 2 views
0

Ich benutze jQuery 1.9 mit ein paar anderen Bibliotheken (Kendo) und einen Ajax Aufruf an einen MVC-Controller. Die Controller-Methode ist erfolgreich, aber wenn keine Daten zurückgegeben werden (null), tritt der Ajax-Aufruf nicht in den Erfolgsblock ein. Mit Blick auf andere Threads auf diesem, versuchte ich Folgendes, aber es fällt immer noch nur in den Erfolgsblock, wenn der Aufruf ein Nicht-Null-Ergebnis zurückgibt.jQuery Ajax-Aufruf, der Null zurückgibt nicht in Erfolg Block

Meine MVC-Controller eine JsonResult wie diese gibt, wo Retval ist eine Sammlung von Gegenständen

[update]
Ich glaube, ich bin in der Frage läuft hier erwähnten jQuery post JSON fails when returning null from ASP.NET MVC

JsonResult j; 
    if(retval != null) 
    { 
     j = Json(retval, JsonRequestBehavior.AllowGet); 
    } 
    else 
    { 
     j = Json(new { }, JsonRequestBehavior.AllowGet); 
    } 

    return j; 
+1

1) Bitte geben Sie den clientseitigen Code an, der den Anruf tätigt. 2) Auch der Servercode ist nicht vollständig. Sie müssen Controller- und Aktionsdefinitionen bereitstellen. Ihr Aufruf wird fehlschlagen, wenn die erforderlichen Parameter int, dezimal usw. nicht angegeben sind. 3) Auch Ausnahmeblock Fehlerprotokoll zu trösten (Zeichenfolge auch, wenn erforderlich) und sehen vor, dass .. das Sie alle helfen zu finden und schnell zu beantworten .. –

+0

Mögliches Duplikat [jQuery Post JSON schlägt fehl, wenn null von ASP Rückkehr .NET MVC] (http://stackoverflow.com/questions/15939944/jquery-post-json-fails-when-returning-null-from-asp-net-mvc) –

+0

Etwas verwandt mit [dieser Frage] (http: //stackoverflow.com/questions/15939944/jquery-post-json-fails-when-returning-null-from-asp-net-mvc). Wenn der clientseitige Code '$ .ajax()' verwendet und Sie die Option 'dataType' entfernen, trifft dies den Erfolgsblock –

Antwort

0

jQuery kann nicht parse null als json. Gebe ein leeres Objekt zurück oder true als json.