0

我在 ASP.Net MVC 4 中有一个基本的 CRUD 应用程序。CRUD 格式的创建视图有一个带有“保存”和“取消”按钮的表单。当我点击保存按钮时,数据正确存储在数据库中,视图刷新到以前的列表记录。我想制作一个“保存和添加”按钮,用户单击它,然后数据将存储并再次加载“创建”视图。对不起,我的英语不好...谢谢。

4

2 回答 2

0

您需要在 Create 操作中更改重定向。这称为发布/重定向/获取模式。当您发布表单数据时,您的操作会将其保存到数据库中,然后重定向到其他地方。现在它正在将您重定向到您的项目列表操作(可能是 RedirectToAction("Index"))。将其更改为重定向回创建。

public ActionResult Create(DataModel data)
{
    if (ModelState.IsValid)
    {
        // save data here

        return RedirectToAction("Create");
    }
}
于 2012-11-19T19:06:20.480 回答
0

就 mfanto 而言,如果您希望能够像我相信的那样检测单击了哪个按钮,只需使用 type="submit" 创建两个按钮,并且两者都具有相同的名称。但是,给它们两个不同的值。喜欢:

<input type="submit" name="whichButton" value="Save" />
<input type="submit" name="whichButton" value="SaveAndAdd" />

然后在您的控制器中,您将在与按钮名称相同的参数中收到按钮值:

public ActionResult ActionName(Model model,string whichButton){
    switch(whichButton) {
        case "Save" : //do stuff and redirect to the list of records
        break;
        case "SaveAndAdd" : //do stuff and redirect to create
        break;
    }
}
于 2012-11-19T19:15:51.407 回答