2011-11-07 76 views
1

当我在我的asp.net web应用程序中使用复选框runat="server"。 然后浏览器有一个问题:ASP.NET CheckBox runat =“服务器”名称问题

未捕获的语法错误,不能识别的表达式: [名称= ctl00 $ $ ctl00 $ ContentPlaceHolder1 $ FormPlaceHolder CrossFinancing]

ASP.NET代码是:

<input type="checkbox" name="CrossFinancing" id="CrossFinancing" runat="server" /> 

生成的HTML代码是:

<input name="ctl00$ctl00$ContentPlaceHolder1$FormPlaceHolder$CrossFinancing" type="checkbox" id="ctl00_ctl00_ContentPlaceHolder1_FormPlaceHolder_CrossFinancing" /> 

这个名字有什么问题?这是由asp.net和 浏览器不会正确解析这个,其他控件的名称中有'$', 这个工作。

+0

生成的html是一个文本框,而不是复选框..? – Curt

+0

是type =“text”还是应该是type =“checkbox”? –

+0

固定,我粘贴不是这条线我应该 – Svisstack

回答

3

为什么不让ASP.net运行时为您生成复选框?

<asp:CheckBox id="chkCrossFinancing" runat="server"/> 

name属性将由ASP.net运行时自身管理。