你可以在ASP.NET MVC的页面上有两个表单吗?

时间:2008-10-12 12:39:04

标签: .net asp.net-mvc

使用Web表单我知道您在页面上只能有一个ASP.NET表单。我已经完成了一些实现,其中我使用Javascript将其他表单添加到页面以支持登录控件(返回到Logon.aspx而不是当前页面)。我想知道每个页面的单个表单是否仍然存在于ASP.NET MVC中,或者是否已解除此限制。

3 个答案:

答案 0 :(得分:6)

您可能希望在MVC代码中使用常规HTML表单,并将action属性指向适当的控制器操作。因此,您可以在页面上拥有任意数量的表单。

答案 1 :(得分:1)

使用ASP.NET MVC,您实际上可以使用所需的任何表示层。默认视图引擎ASP.NET Web Forms对一个服务器端表单(runat="server")具有相同的限制,但无论有没有MVC,您都可以始终使用仅客户端表单。

使用仅限客户端的表单(例如,没有runat='server'因此被解析为不透明的LiteralControl解析而不是HtmlForm控件的一部分)不能包含任何需要服务器端形式的服务器端控件。

Web窗体的标记中的任何代码(通常在<%= code blocks %>中)调用MVC框架的API(如<%= Html.Button() %>解析为ASP.NET Web控件,所以对页面的使用位置没有限制。

答案 2 :(得分:0)

您可以使用负责任的来使用尽可能多的Html表单。