gpt4 book ai didi

javascript - 清除 ASP.net 中的按钮名称参数

转载 作者:行者123 更新时间:2023-12-03 07:56:20 25 4
gpt4 key购买 nike

您好,我是 ASP 和 MVC3 新手,我的问题是如何清除帖子中的按钮名称参数,因为每次我在单击带有按钮参数的按钮后刷新页面时,我上次单击的按钮的值仍然存在,有什么方法可以在提交后或在 Controller 中刷新页面或使用 Jquery 时清除此内容吗?

谢谢

这是我的代码片段:

[HttpPost]
public ActionResult HistoryPage(HistoryModel model, string btnAction)
{
if (Session["HistoryId"] != null)
{
switch (btnAction)
{
case "Delete History":
DeleteHistory(model, ref deleteHistoryError, ref deleteHistorySucesss);
break;
case "AddHistory":
AddHistory(model);
break;

}
}
return View(model);
}

这是删除历史记录

private static void DeleteHistory(HistoryModel model, ref string ErrorMessage, ref string SuccessMessage)
{

foreach (var item in model.HistoryIds)
{
if (item != "")
{
bool result = Int32.TryParse(item, out HistoryIds);
if (result)
{
var History= db.History.Find(HistoryId);
bool HistoryExist = true;

if (History.HistoryId != null)
{

History.LogicalDelete = true;
History.DateModified = DateTime.Now;
db.SaveChanges();


SuccessMessage = "History successfully deleted";
}
else
{
ErrorMessage = "Unable to delete History.";
}
}
}
}
if (!string.IsNullOrWhiteSpace(ErrorMessage))
{
SuccessMessage = String.Empty;
}
}
}
}

我的表单下方的 Cshtml 按钮

<input type="submit" name="btnAction" class="btnMultiDelete button_example button_example_small div-bottom-3 w100Percent txtAlignLeft"
value="Delete History" id="btnDeleteHistory" />

最佳答案

浏览器刷新时(单击 F5),浏览器会发出最后一次发出的请求(在您的情况下为 post)。这是浏览器的默认行为。

所以我们必须在这里遵循 PRG 模式。 PRG - POST-REDIRECT-GET。因此,在您的代码中,您必须返回 RedirectToAction("Get Action Name"),而不是返回 View 。在这种情况下,浏览器的最后一个请求将是 GET,当您进行后续刷新时,它将发出 GET 请求而不是 POST >.

你的代码应该是这样的 -

    [HttpPost]
public ActionResult HistoryPage(HistoryModel model, string btnAction)
{
if (Session["HistoryId"] != null)
{
switch (btnAction)
{
case "Delete History":
DeleteHistory(model, ref deleteHistoryError, ref deleteHistorySucesss);
break;
case "AddHistory":
AddHistory(model);
break;
}
return RedirectToAction("Get Action Name ...");
}
return View(model);
}

关于javascript - 清除 ASP.net 中的按钮名称参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34783165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com