Der Controller kann je nach Ergebnis entweder JSON oder HTML zurückgeben

8

Angenommen, ich habe ein Popup-Fenster, das ein Formular enthält. Ich muss einen Controller haben, der das Formular verarbeitet, und je nach Ergebnis gibt dieser Controller entweder JSON (wenn alles gut geht und Popup kann durch JavaScript geschlossen werden) oder HTML (wenn die Formulardaten nicht gültig sind und das Formular ersetzt werden muss) mit einem neuen HTML - mit der Validierung Fehlermeldungen. Also habe ich genau solch eine Lösung gefunden: das ist Form:

%Vor%

Und ich habe jquery Handler für dieses Formular:

%Vor%

Controller:

%Vor%

Die Frage - Gibt es elegantere Lösungen für solche Aufgaben?

    
Don Tomato 21.05.2013, 06:18
quelle

3 Antworten

5

IMHO das ist eine sehr schöne Lösung für dieses Problem und etwas, das ich definitiv verwenden würde.

    
Darin Dimitrov 21.05.2013, 06:21
quelle
2

Sehen Sie gut aus mit Ihrem Ansatz. Aber wenn Ihre JSON-Fehlermeldung für alle Bildschirme üblich ist, möchte ich vorschlagen, dass Sie in diesem Fall einen Aktionsfilter schreiben können. So können wir einen Code eleganter machen

%Vor%     
thangchung 21.05.2013 07:13
quelle
0

Wenn Sie mehrere Datentypen aus der URL zurückgeben müssen, müssen Sie den dataType in jQuery AJAX nicht übergeben. '

%Vor%     
Prince J Painadath 22.12.2016 18:47
quelle