比如这样 <asp:CheckBox ID='hs<%# Eval("hsId") %>_cbx' runat="server" />
我是想在datalist里面出现一个 id 为 hs13_cbx 的复选框,13时数据的key,但是总是抱错,应该怎么写啊?

解决方案 »

  1.   

    <a href="HsDetail.aspx?hsId=<%# Eval("hsId") %>" target=_blank>头衔:<%# Eval("title") %></a>我这样写就没问题,但是复选框怎么也弄不出来啊,问题出在哪里呢?
      

  2.   

    服务器控件属性得这样绑定<asp:CheckBox ID='<%# "hs" + Eval("hsId") + "_cbx" %>' runat="server" />但 ID 作为特殊属性,好像无法在模板列中绑定
      

  3.   

    为什么不在DataBound里搞呢?e.FindControl("CheckBoxID"),然后再改ID值
      

  4.   

    ID值好像不能绑定的你要判断这个checkbox 是否被选中 相应事件里循环datalist的item,再用findcontrol方法找到控件,再判断它是否被选中,思路是这样子,细节自己去搞定
      

  5.   

    用findcontrol来找到相应的gridview中的控件,ID是不能随便指定的
      

  6.   

    如果服务器的ID属性不能随意绑定,可以用标准的html控件应该可以
      

  7.   

    ok!搞定了~~~
            foreach (DataListItem item in public_dls.Items)
            {
                ((CheckBox)item.FindControl("hscbx")).Checked = true;
            }
    这样就可以了~还真麻烦啊~