J'essaye de rediriger l'utilisateur s'il se connecte avec succès mais le code que j'ai sur ma page semble empêcher la redirection de fonctionner. Si je supprime le jQuery ci-dessous la redirection fonctionne. Est-ce que quelqu'un peut me dire s'il y a quelque chose que je fais de mal? MercijQuery empêchant RedirectToAction de fonctionner?
je l'action suivante:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Login(User user)
{
var myErrors = new Dictionary<string, string>();
try
{
if (ModelState.IsValid)
{
if (userRepository.ValidUser(user))
{
return RedirectToAction("Index", "Group", new {page = (int?)null});
}
else
{
return Json("Username or password seems to be incorrect");
}
}
else
{
foreach (KeyValuePair<string, ModelState> keyValuePair in ViewData.ModelState)
{
if (keyValuePair.Value.Errors.Count > 0)
{
List<string> errors = new List<string>();
myErrors.Add(keyValuePair.Key, keyValuePair.Value.Errors[0].ErrorMessage);
}
}
return Json(myErrors);
}
}
catch (Exception)
{
return Json("Invalid");
}
}
et le code suivant sur ma page:
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$("#SaveSuccess").hide();
$("#btnLogin").click(function() {
$("form").submit(function(event) {
var formData = $(this).serialize();
$.post($(this).attr("action"), formData, function(res) {
ShowErrors(res);
if (res == true) {
$("#SaveSuccess").text("Saved");
}
else {
$("#divError").html(res);
}
$("#SaveSuccess").fadeIn(100);
}, "json");
return false;
});
});
});
</script>
http://stackoverflow.com/questions/7824243/jquery-mobile-mvc-getting-the-browser-url-to-change-with-redirecttoaction sauvé le bacon (et la santé mentale). –