ASP.NET获取DataList模板中控件的值
引言:关于这个问题,我之前真的是醉了,用了一下午多的时间解决怎样获取datalist控件里面的绑定了数据库的值的控件的值,找了很久很久很久,终于皇天不负有心人,我解决了那个问题,真的是很有成就感啊,开森。
1.这个需要使用datalist的ItemCommand事件,所以首先添加datalist的这个事件
2.当你点击某个按钮的时候,会触发ItemCommand事件,那么你可以为该按钮加上CommandName属性值,这里我给ImageButton设置的此属性值为:AddPic
<asp:DataList ID="imagelist" runat="server" CellPadding="0" RepeatColumns="10" Width="100%" OnItemCommand="imagelist_ItemCommand"> <ItemTemplate> <div style="width:100%; height:100%; max-width:45px; max-height:45px; margin:1px; padding:0px;"> <asp:ImageButton ID="imgurl" runat="server" ImageUrl='<%# DataBinder.Eval(Container, "DataItem.gamerolePic") %>' Width="100%" CssClass="imgstyle" AlternateText='<%# DataBinder.Eval(Container, "DataItem.gameroleName") %>' CommandName="AddPic" /> </div> </ItemTemplate> </asp:DataList>
3.在后台可以将CommandName的值作为进行的操作的判断条件
4.接下来就是关键的获取控件的值了,首先你要获得点击行的索引
5.然后根据这个索引值和你想要获取控件的ID来寻找这个控件的值,我这里是获取ImageButton控件,所以用的是ImageButton定义,后面的“imgurl”是ImageButton的ID,当然你也可以用lable、button等控件
if (e.CommandName == "AddPic") { //int CN_id = int.Parse(e.CommandArgument.ToString()); ImageButton imgbut = (ImageButton)e.Item.FindControl("imgurl"); Response.Write("<script>alert('" + imgbut.ImageUrl + "');</script>"); }
以上,就是关于ASP如何获取DataList模板控件值的方法了
该文章转载于:百度经验-mahongdiana