parserrror SyntaxError: Unexpected token < - Charge Partielle de la Vue à l'aide de jQuery Ajax dans ASP.NET MVC 4
Je suis en utilisant la suite appel Ajax pour charger une vue partielle dans un div:
$.ajax({
url: "/URL",
type: "POST",
dataType: "json",
data: JSON.stringify(request),
contentType: "application/json; charset=utf-8",
success: function(data) {
$('#Result').html(data);
App.hidePleaseWait();
},
error: function (jqXHR, textStatus, errorThrown) {
App.hidePleaseWait();
alert(textStatus);
alert(errorThrown);
}
});
Voici mon controller:
[HttpPost]
public ActionResult GetSomething(MyModel formModel)
{
var model = new ResultModel();
try
{
model.Data = GetSomeData();
}
catch (Exception exception)
{
model.ErrorMessage = exception.Message;
}
return PartialView("_Results", model);
}
J'obtiens l'erreur suivante "parserrror SyntaxError: Unexpected token <"
Il semble que l' .appel ajax attend json au lieu de les html. Que dois-je faire pour résoudre ce problème?
Grâce.
cette erreur signifie que vous êtes à la demande de json, mais le serveur est de retour HTML. soit que le serveur retourne du JSON, ou faire de l'ajax s'attendre à du texte ou html.
OriginalL'auteur Mike | 2013-09-18
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin de changer le type de données dans l'appel ajax.
à
Type de données indique que le type est du json, mais vous renvoyer la vue partielle qui est html. Donc essaie de l'analyser comme des données json et génère l'erreur.
type de données type de données que vous attendez depuis le serveur.
changer de
html
Merci... j'ai une question comme une prolongation - stackoverflow.com/questions/24175081/...
OriginalL'auteur PSL
Comme vous le savez maintenant ajouter type de données au format html au lieu de json. J'ai aussi vérifier les éléments suivants dans la réussite ou fait partie de jquery ajax fonction:
Aussi, il ya des moments où vous pourriez avoir besoin d'analyser les données que vous avez reçues depuis le serveur, comme le html comme ceci:
De référence pour parseHTML()
$.parseHTML(données) a résolu mon problème.Merci
OriginalL'auteur Siddharth Pandey