在使用Ajax.Beginform验证插件时提交JQuery并不会停止提交。是否有一个很好的方法来确保Ajax.Beginform没有提交?
我还尝试使用JQuery窗体插件来“ajaxify”我的表单。这是一种享受。但是,我的表单是一个登录表单,如果用户成功登录,我希望它们被重定向。我在Ajax.BeginForm中通过返回一个JavaScript对象来实现这一点,但是使用JQuery.Form.js的相同代码只是显示Javascript,而不是执行它。有办法解决这个问题吗?
按照下面的要求,我添加了一些示例代码
控制器代码
if (Request.IsAjaxRequest())
{
return Content("/receipt/latest");
}
else
{
return RedirectToAction("latest", "receipt");
}我用它来返回这个js函数的字符串:-
JS
function manageResponse(responseText, statusText) {
if (responseText.toString().substr(0, 1) == '/') {
window.location = responseText;
}
else {
$("#formResult").text(responseText);
}
}我使用这些选项将响应与JQuery表单插件联系起来。
var options = {
beforeSubmit: function() {
return $('#login').validate().form();
},
success: manageResponse
};我觉得有点“讨厌”,但很管用。我在问有没有更好的办法?
抢夺
发布于 2009-07-22 08:10:44
在我看来,这并不是太刻薄,但他们认为我不是世界上最优雅的人。我认为我唯一能做的就是把它设置成这样:
$('#login').validate(); // setup form to use validation plugin
var options = {
beforeSubmit: function() {
return $('#login').valid(); // check form is valid
},
success: manageResponse
};https://stackoverflow.com/questions/1163537
复制相似问题