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

标签 asp.net-mvc-3

我正在从事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/

    相关文章:

    jquery - 在 asp.net MVC3 EF4.1 中创建父级时创建动态子级列表

    ajax - 通过 Ajax 帖子处理安全保存的最佳实践 asp.net MVC 3

    c# - 我如何为文本字段生成动态 ID 并从 asp.net 4 mvc3 中的模型数组获取数据

    mysql - 使用 MySql 的 asp .NET Framework 4 上的安全异常,信任级别 : Medium

    c# - MvcContrib TestHelper 在使用 AssertViewRendered 时给出一个奇怪的错误

    asp.net-mvc - 结构图和 MVC 3.0

    asp.net-mvc - ASP.NET MVC3 View 模型在回发到 Controller 时不为空但缺少数据

    asp.net-mvc-3 - 在不修改我的所有 Controller 的情况下使用 AppHarbor 处理 URL

    c# - 将鼠标悬停在条形图上时使用 ASP.NET MVC 3.0 显示列标签

    asp.net-mvc-3 - HTML编码字符串-ASP.NET Web窗体VS Razor View 引擎