淘汰 asyncCommand / Ajax MVC ActionResults

Knockout asyncCommand / Ajax MVC ActionResults

我对前端开发以及我正在从事的项目(错误修复)都很陌生。我正在使用 Knockout/MVC ActionResults。

我的任务是更改一个表单,使其不允许双击提交,我添加了基本的 Jquery 来禁用按钮,但被告知它需要使用 asyncCommand。

然而,我注意到的是,所有使用此示例的示例都 return 一个 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;
        }
    });

控制器

        public ActionResult Create(Model model, int versionId)
        {

if (success)
                {
                    return Redirect("/accounts");
                }
else
                {
                    return View(model);
                }
}

这真的会发生吗?

谢谢,

克莱尔

我的解决方案是将 ActionResult 更改为 return,并将值更改为 AJAX。