我对前端开发以及我正在进行的项目(bug修复)都很陌生。我正在使用Knockout / MVC ActionResults。
我的任务是改变一个表单以便它不允许双击提交,我添加了基本的Jquery来禁用按钮,但是被告知它需要使用asyncCommand。
我所注意到的是,所有使用它的例子都会返回一个Json结果等,其中我的结果将是一个动作结果。
我想知道我是否需要改变MVC的行动结果,或者是否有其他方式我只是没有看到。
我希望我可以做类似的事情:
HTML
<button class="btn btn-action" data-bind="command: create, activity: create.isExecuting">Create</button>
JS
model.create = ko.asyncCommand({
execute: function (complete) {
$.ajax({
type: 'POST',
url: "/account/create",
data: ko.toJSON(data),
contentType: 'application/json; charset=utf-8',
});
complete();
},
canExecute: function (isExecuting) {
return !isExecuting;
}
});
CONTROLLER
public ActionResult Create(Model model, int versionId)
{
if (success)
{
return Redirect("/accounts");
}
else
{
return View(model);
}
}
这真的可以发生吗?
谢谢,
克莱尔
答案 0 :(得分:0)
我的解决方案是改变ActionResult以将值返回给AJAX。