2011-08-25 36 views
1

我试图做的事:为什么输入标签不能输入?

<input type="submit" runat="server" ... /> 

错误:

The base class includes the field 'btnEdit', but its type (System.Web.UI.HtmlControls.HtmlInputImage) is not compatible with the type of control (System.Web.UI.HtmlControls.HtmlInputSubmit). 

提交是一个有效的类型,这里有什么问题?

+0

不是一个ASP开发,但不会运行在服务器上的输入按钮提交表单,之前它曾经被发送到客户端? –

+1

@Marc B:在ASP.NET的情况下,runat =“server”只是告诉ASP.NET把它当作服务器控件而不是常规标记。 ASP.NET页面基本上是控件树('Form'有孩子,那些孩子可能有孩子等)。每个控件都是一个节点,我很确定,“控件”节点之间的所有标记都被视为单个文本节点。这样你可以走树,让每个节点都以HTML格式输出,并从中获取完整的HTML页面。 – R0MANARMY

回答

3

您正在做其他事情,发布更多的代码。看起来您正在将btnEdit转换为System.Web.UI.HtmlControls.HtmlInputImage

没有什么错这样做,会后罚款:

<input type="submit" runat="server" name="bla" value="bla" /> 
+0

这绝对应该是评论。 –

+5

这就是这个人问怎么做。如果这需要评论,那么问题需要结束。 –

0

错误消息显示你已经有一个控制/ html元素id为“btnEdit”,这是类型的System.Web.UI的.HtmlControls.HtmlInputImage。

您是否从某个基类继承了您的网页类,并且基类有可能已经定义了该控件。

0

使用普通ASP.NET并启用提交行为:

<asp:Button ID="Button1" runat="server" Text="Foo" UseSubmitBehavior="true" /> 
0

也许“btnEdit”是由图像按钮定义,然后将其更改为提交。

所以,

1,您可以将System.Web.UI.HtmlControls.HtmlInputImage在design.cs文件更改为System.Web.UI.HtmlControls.HtmlInputSubmit

2,刚刚从btnEdit改变ID名称什么...

相关问题