La soumission d'un Ajax.Beginform lors de l'utilisation du plugin JQuery Validate n'arrête pas la soumission. Y at-il un bon moyen de s'assurer que le Ajax.Beginform n'est pas soumis?jquery validate & ajax.beginform
J'ai également essayé d'utiliser le plugin JQuery Forms pour 'ajaxifier' mon formulaire. Cela fonctionne un régal. Cependant, mon formulaire est un formulaire de connexion et si l'utilisateur se connecte avec succès, j'aimerais qu'il soit redirigé. Je l'ai fait dans Ajax.BeginForm en retournant un objet JavaScript, mais le même code utilisant JQuery.Form.js affiche simplement le Javascript plutôt que de l'exécuter. Y a-t-il un moyen de gérer cela?
[tel que demandé ci-dessous, j'ai ajouté quelques exemples de code]
code contrôleur
if (Request.IsAjaxRequest())
{
return Content("/receipt/latest");
}
else
{
return RedirectToAction("latest", "receipt");
}
Je l'ai utilisé cette option pour retourner une chaîne à cette fonction js: -
JS
function manageResponse(responseText, statusText) {
if (responseText.toString().substr(0, 1) == '/') {
window.location = responseText;
}
else {
$("#formResult").text(responseText);
}
}
J'ai utilisé ces options pour lier la réponse avec le plugin JQuery Form.
var options = {
beforeSubmit: function() {
return $('#login').validate().form();
},
success: manageResponse
};
Cela me semble un peu «hacky», mais cela fonctionne. Je demandais s'il y avait un meilleur moyen ou non?
Rob
Cela pourrait être la solution –