html - 从搜索中选择后,在编辑时自动填充文本框。 ASP.NET

我有一个搜索页面,它将数据库中的搜索返回到 table。 table 是使用存储在 ViewBag 中的对象从 for 循环生成的。每行生成一个编辑和删除按钮。我如何将信息从一个视图发送到另一个视图?

我已经尝试使用 JQuery 来获取该行,但这并没有引导我到任何地方。

回答1

我能想到的最简单的解决方案是使用 asp-route-{value} 标签助手。

你将要做的是:

  1. 添加要在锚中填充的对象的 ID。这被称为锚标记助手。您可以将所需的任何信息作为路由参数传递,这意味着它将作为 URL 中的数据发送。例如,如果我们想在下一个视图中填充产品对象,您可以简单地将产品的 Id 发送到下一个视图,如下所示:
<a class="btn btn-warning" asp-controller="Product" asp-action="Delete" asp-route-productId="@product.Id">Delete</a>
  1. 在控制器中,您需要使用锚标记助手中使用的相同来捕获路由参数。例如,您将实现如下内容:
public async Task<IActionResult> Delete(int productId)
{
      //use the productId to populate the object

      //send the populated object back to the view

      return View(populatedOject);
}
  1. 最后,您将能够在视图中使用填充的对象(模型)。

参考:

https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/built-in/anchor-tag-helper?view=aspnetcore-6.0#asp-route-value

相似文章

随机推荐

最新文章