当添加在服务器上运行的表单时,将有两个表单与runat服务器,并发生另一个错误。有人可以给我一个想法。提前谢谢。
错误的详细信息如下。
'TextBox'类型的控件'ctl00_TextBox1'必须放在带有runat = server的表单标签内。 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中的起源位置的更多信息。
异常详细信息:System.Web.HttpException:类型为“TextBox”的控件“ctl00_TextBox1”必须放在带有runat = server的表单标记内。
来源错误:
在执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息。
堆栈追踪:
[HttpException(0x80004005):控制 'TextBox'类型的'ctl00_TextBox1' 必须放在表格标签内 RUNAT =服务器。]
System.Web.UI.Page.VerifyRenderingInServerForm(控制 控制)+2052287
System.Web.UI.WebControls.TextBox.AddAttributesToRender(HtmlTextWriter的 作家)+49
System.Web.UI.WebControls.WebControl.RenderBeginTag(HtmlTextWriter的 作家)+17
System.Web.UI.WebControls.TextBox.Render(HtmlTextWriter的 作家)+17
System.Web.UI.Control.RenderControlInternal(HtmlTextWriter的 writer,ControlAdapter适配器)+25
System.Web.UI.Control.RenderControl(HtmlTextWriter的 writer,ControlAdapter适配器)+121
System.Web.UI.Control.RenderControl(HtmlTextWriter的 作家)+22
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter的 作家,ICollection孩子们)+199
System.Web.UI.Control.RenderChildren(HtmlTextWriter的 作家)+20
System.Web.UI.Control.Render(HtmlTextWriter的 作家)+7
System.Web.UI.Control.RenderControlInternal(HtmlTextWriter的 writer,ControlAdapter适配器)+25
System.Web.UI.Control.RenderControl(HtmlTextWriter的 writer,ControlAdapter适配器)+121
System.Web.UI.Control.RenderControl(HtmlTextWriter的 作家)+22
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter的 作家,ICollection孩子们)+199
System.Web.UI.Control.RenderChildren(HtmlTextWriter的 作家)+20
System.Web.UI.Page.Render(HtmlTextWriter的 作家)+26
System.Web.UI.Control.RenderControlInternal(HtmlTextWriter的 writer,ControlAdapter适配器)+25
System.Web.UI.Control.RenderControl(HtmlTextWriter的 writer,ControlAdapter适配器)+121
System.Web.UI.Control.RenderControl(HtmlTextWriter的 作家)+22
System.Web.UI.Page.ProcessRequestMain(布尔 includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)+2558版本信息:Microsoft .NET 框架版本:2.0.50727.1873; ASP.NET版本:2.0.50727.1433
答案 0 :(得分:9)
错误说明了问题
正确
<form id="frm" runat="server">
<asp:TextBox id="txt" runat="server" />
</form>
不正确的
<asp:TextBox id="txt" runat="server" />
<form id="frm" runat="server">
</form>
答案 1 :(得分:4)
查看标签&#34;主页&#34;如果您尝试在使用母版页的内容页面中动态添加文本框(或任何控件),则可能会弹出此错误。
只有母版页包含一个表格,其中包含runat =&#34; server&#34;组。内容页面只有内容占有者。
要动态地向内容页面添加控件,请在内容页面中的所需contentplaceholder中包含一个面板,然后在代码中向其添加控件。例如,
在内容页面的aspx文件中,添加一个类似
的面板<asp:Panel ID="Panel1" runat="server">
</asp:Panel>
然后,在您的代码中,
Dim txtbox As New textbox()
Panel1.Controls.Add(txtbox)
答案 2 :(得分:1)
发生错误是因为您将控件与runat =“server”放在窗体标记之外(runat =“server”也是如此)。 ASP.NET要求使用runat =“server”属性在一个表单中包含所有服务器控件。
答案 3 :(得分:0)
使用标准ASP.Net,您只能拥有一个表单。这是ASP.Net的限制。如果您要做的事情需要2个或更多<FORM>
标签,那么您将需要MVC或类似的东西。
答案 4 :(得分:0)
我也碰到了这个。我做了什么,只是添加了一个PageWrapper,所有网站的代码都在里面。例如:
<body>
<div ID="PageWrapper">
<form ID="form1" runat="server">
<div ID="Header">...</div>
<div ID="MainContent">...</div>
...
</form>
</div>
</body>
这样的事情。希望这会有所帮助。
答案 5 :(得分:0)
您没有说明此控件在您的表单上的位置。
如果这个错误是由于我有一个GridView控件内的另一个控件的结果,那么这也可以帮助你:
Control xxx of type 'LinkButton' must be placed inside a form tag with runat=server
答案 6 :(得分:0)
错误是控制&lt; txtTo&#39;类型&#39; TextBox&#39;必须将其放在带有runat = server的表单标记内。
错误是本规范。
Exception in thread "main" java.lang.NoClassDefFoundError: taglib/Tagger
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at Launcher.main(Launcher.java:10)