Html扩展方法无法在表单中工作

问题描述 投票:1回答:1

我有以下表格:

@using (Html.BeginForm("Cancel", "Member", FormMethod.Post))
{        
    Html.SubmitButton(); //doesn't work
}
@*@Html.SubmitButton(); //does work*@

扩展方法如下所示:

public static MvcHtmlString SubmitButton(this HtmlHelper helper)
{
    return new MvcHtmlString("<input type = \"submit\" value = \"Cancel\" />");
}

为什么输入元素HTML能够在使用块之外但不在其中生成?

c# html asp.net asp.net-mvc-5
1个回答
5
投票

你错过了领先的@,它告诉razor将结果输出到视图。当你只使用Html.SubmitButton();时,会执行该方法并返回结果,但不会执行任何操作。

你的代码需要

@using (Html.BeginForm("Cancel", "Member", FormMethod.Post))
{        
    @Html.SubmitButton()
}
© www.soinside.com 2019 - 2024. All rights reserved.