很急很急很急 两个repeater嵌套 外层的按钮的单击事件不起作用,
很急很急很急 两个repeater嵌套 外层的按钮的单击事件不起作用,在线等……!
啥也不说了先贴代码
cs文件代码
啥也不说了先贴代码
cs文件代码
- C# code
using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; namespace Publisher.web.Management.BookSystem { public partial class booktype : System.Web.UI.Page { public readonly Bll.Book.BookType bllBookType = new Publisher.Bll.Book.BookType(); protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["fixid"] != null) { string fixid = Request.QueryString["fixid"]; Model.Book.booktype modbooktype = bllBookType.GetModel(int.Parse(Common.DESEncrypt.Decrypt(fixid))); txtTypename.Text = modbooktype.TypeName; dplParentType.Items.FindByValue(modbooktype.TypeID.ToString()).Selected = true; } // rptBookTypeRoot.ItemCommand+=new RepeaterCommandEventHandler(rptBookTypeRoot_ItemCommand); //绑定repeater控件 if (!IsPostBack) { BindRepeater(); } } protected void BindRepeater() { DataSet dsRootlist = bllBookType.GetList("ParentID = 0"); rptBookTypeRoot.DataSource = dsRootlist; rptBookTypeRoot.DataBind(); //绑定根类型类表(新增) ListItem listItRoot = new ListItem("根类型", "0"); dplParentType.DataSource = dsRootlist; dplParentType.DataTextField = "typename"; dplParentType.DataValueField = "typeid"; dplParentType.DataBind(); dplParentType.Items.Insert(0, listItRoot); //绑定根类型类表(新增) dplFixParentType.DataSource = dsRootlist; dplFixParentType.DataTextField = "typename"; dplFixParentType.DataValueField = "typeid"; dplFixParentType.DataBind(); dplFixParentType.Items.Insert(0, listItRoot); } /// <summary> /// 绑定内层数据列表 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void rptBookTypeRoot_ItemDataBound(object sender, RepeaterItemEventArgs e) { //判断里层repeater处于外层repeater的哪个位置( AlternatingItemTemplate,FooterTemplate, //HeaderTemplate,,ItemTemplate,SeparatorTemplate) if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { Repeater rptTemp = e.Item.FindControl("rptItemList") as Repeater;//找到里层的repeater对象 DataRowView rowv = (DataRowView)e.Item.DataItem;//找到分类Repeater关联的数据项 rptTemp.DataSource = bllBookType.GetList("ParentID=" + rowv["TypeID"]); rptTemp.DataBind(); } } // //protected void rptBookTypeRoot_ItemCommand(object sender, RepeaterCommandEventArgs e) //{ // Response.Write("fuck"); //} // /// <summary> /// 删除类型用方法 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> //这里设置的断点就是不执行!!!!郁闷的要屎掉了 protected void lbtnDelItem_Click(object sender, RepeaterCommandEventArgs e) { if (e.CommandName == "del") { Response.Write("fuck"); } //if (e.CommandSource.ToString() == "System.Web.UI.WebControls.LinkButton") //{ // LinkButton lbtn = (LinkButton)e.CommandSource; // bllBookType.Delete(int.Parse(lbtn.CommandArgument.ToString())); // BindRepeater(); //} } /// <summary> ///保存新增 类型 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnAdd_Click(object sender, EventArgs e) { Model.Book.booktype modBooktype = new Publisher.Model.Book.booktype(); modBooktype.TypeName = txtTypename.Text; modBooktype.ParentID = int.Parse(dplParentType.SelectedValue); if (modBooktype.TypeName != "") { if (bllBookType.Add(modBooktype) > 0) { BindRepeater(); } } clearform(); } /// <summary> /// 保存修改的类型 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSave_Click(object sender, EventArgs e) { } /// <summary> /// 表单清理 /// </summary> protected void clearform() { txtTypename.Text = ""; txtFixname.Text = ""; } } } aspx的代码 [code=HTML]<%@ Page Title="" Language="C#" MasterPageFile="~/Management/SystemMaster.Master" AutoEventWireup="true" CodeBehind="booktype.aspx.cs" Inherits="Publisher.web.Management.BookSystem.booktype" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> <link href="css/booktype.css" rel="stylesheet" type="text/css" /> <script src="../script/booktype.js" type="text/javascript"></script> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <div> <fieldset style="border: 1px solid #116699"> <legend>添加新类型</legend> <div> <h2> 添加根类型</h2> <label> 类型名称:<asp:TextBox runat="server" ID="txtTypename"></asp:TextBox></label> <label> 所属类型: <asp:DropDownList runat="server" ID="dplParentType"> </asp:DropDownList> </label> <asp:Button runat="server" ID="btnAdd" Text="添加" OnClick="btnAdd_Click" /> </div> </fieldset> <fieldset style="border: 1px solid #006699"> <legend>修改类型</legend> <div class="alltype"> <asp:Repeater runat="server" ID="rptBookTypeRoot" OnItemDataBound="rptBookTypeRoot_ItemDataBound" OnItemCommand="lbtnDelItem_Click"> <ItemTemplate> <h2> <%#Eval("TypeName")%>ID=<%#Eval("TypeID")%> <asp:Button runat="server" ID="btn3" CommandName="del" OnClientClick="{if(confirm('确定要删除记录吗?')){return true;}return false;}" CssClass="linkDel" /> </h2> <asp:Repeater runat="server" ID="rptItemList"> <HeaderTemplate> <ul> </HeaderTemplate> <ItemTemplate> <li> <%#Eval("TypeName") %><asp:Button runat="server" ID="LinkButton2" CommandArgument='<%#Eval("TypeID") %>' OnClientClick="{if(confirm('确定要删除记录吗?')){return true;}return false;}" CssClass="linkDel" /> </li> </ItemTemplate> <FooterTemplate> </ul> </FooterTemplate> </asp:Repeater> </ItemTemplate> </asp:Repeater> </div> 类型名称:<asp:TextBox ID="txtFixname" runat="server"></asp:TextBox> 所属类型:<asp:DropDownList runat="server" ID="dplFixParentType"> <asp:ListItem Value="0" Text="根类型"></asp:ListItem> </asp:DropDownList> <asp:Button Text="保存" runat="server" ID="btnSave" OnClick="btnSave_Click" /> </fieldset> </div> </asp:Content>