另外,服务器控件的id跟浏览器端html element的id完全是两回事,不能混乱使用。后者是从服务器控件的ClientID属性得到的。每一行GridView行都会重复执行模板,因此那一对象会在输出html时产生不同的 ClientID。

解决方案 »

  1.   


    大神,我按照你的说法换了一下,仍然报“分析器错误” <asp:TemplateField HeaderText="置顶">
                        <ItemTemplate>
                            <asp:CheckBox ID="CheckBox1" runat="server" lnk="<%#Eval("newsid") %>" />
                        </ItemTemplate>
                    </asp:TemplateField>
      

  2.   


    可以自己设置的,写html你不一定按照标准的来
      

  3.   


    另外,“因此那一对象会在输出html时产生不同的 ClientID”,我不就是需要每一行是不同的ClinentID嘛,如果页面上都是同一个ID这个是不行滴啊
      

  4.   


    可以自己设置的,写html你不一定按照标准的来
    <asp:CheckBox不是html组件,你可以在后台添加属性,不能直接这样写
      

  5.   

    找到原因了,针对runat="server"等类似的控件,必须使用'来标记Eval(),而非双引号