gpt4 book ai didi

asp.net-mvc-3 - 如何从 Controller 的方法在新选项卡中打开cshtml文件?

转载 作者:行者123 更新时间:2023-12-04 03:29:59 26 4
gpt4 key购买 nike

我正在从事Nopcommerce,并且需要生成发票(定制不是他们已经提供的发票,因为这不能解决我们的目的)。我们需要生成发票
在新的选项卡中(使用另一个cshtml文件),使用Controller的方法,我也在 View 上传递模型数据。

<tr>
<td class="adminTitle">
@Html.NopLabelFor(model => model.ProbableDeliveryDate):
</td>
<td class="adminData">
@Html.EditorFor(model=>model.ProbableDeliveryDate)
</td>
</tr>
<tr>
<td>
@if(Model.CanGenrateInvoice)
{
<input type="submit" name="generateinvoice" value="@T("Admin.Orders.Fields.generateinvoice")" id="generateinvoice" class="adminButton" />
}
</td>
</tr>

我必须发布数据以获取probableDeliveryDate的值到 Controller 方法,然后在新选项卡中打开 View 。

我怎样才能做到这一点?

最佳答案

如果要通过Html.ActionLink从首页开始操作,则可以执行以下操作:

Html.ActionLink("Open Invoice", "ActionName","ControllerName", new { id = Model.InvoiceID }, new { target = "_blank" });

指定target =“_blank”将在新标签页中打开

更新

由于您正在将模型发布到 Controller (我希望RedirectToAction可以帮助打开一个新窗口/选项卡,但实际情况并非如此)

我的 spy 感刺痛了您的流动……这只是我,但我会做一些不同的事情。
  • 将模型发布到 Controller
  • 保存生成发票的数据
  • 将InvoiceID返回到操作
  • 将InvoiceID添加到模型
  • 将模型发送回 View
  • 通知用户
  • 发票已生成并显示一个链接(如上所示),该链接使用户可以打开发票或
  • 这提供了完美的干净解决方案来显示模型错误(如果有
  • )

    您的 View 中可能有一段 Razor 代码可以做到这一点:
    @{
    if(Model.InvoiceID != null && Model.InvoiceID !=0) {
    @Html.ActionLink("Open Invoice", "ActionName","ControllerName", new { id = Model.InvoiceID }, new { target = "_blank" });
    }
    }

    关于asp.net-mvc-3 - 如何从 Controller 的方法在新选项卡中打开cshtml文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10563531/

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