0

asp.net link button not working properly

<%@ Page Title="" Language="C#" MasterPageFile="~/Ui/MasterPage_UI.master" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Ui_Default2" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">

<div class="content" runat="server">
<p>
I am a returning customer</p>
<b>E-Mail Address:</b><br />
    <asp:TextBox name="email" runat="server" ID="email" 
    ValidationGroup="email" ></asp:TextBox>
    <br />
    <br />
    <b>Password:</b><br />
    <asp:TextBox  ID="pwd" runat="server" name="password" TextMode="Password"></asp:TextBox>
    <br />
    <br />
    <asp:LinkButton ID="Submit" runat="server" CssClass="button" Text="Login" onclick="Submit_Click" ValidationGroup="email" />
</div>

</asp:Content>

the dynamicly generated menu's aspx code is--> `

<div class="categories" runat="server">
<ul runat="server" id="nav">
<li class="home" style="background-repeat: no-repeat; background-color: #94C23C; background-image: url(home.jpg); background-position: center;"><a href="index.htm">Home</a></li>
<!--Dynamic menu-->
</ul>
</div>
</div>`

and thye cs code is-->

`public void bindmenu() { HtmlGenericControl li; HtmlAnchor link; HtmlGenericControl div;

    //for main menu
    DataTable dt = new BALCate().GetCate();
    foreach (DataRow dr in dt.Rows)
    {
        int cateid = int.Parse(dr["cate_id"].ToString());
        String cate_name = dr["cate_name"].ToString();
        li = new HtmlGenericControl("li");
        link = new HtmlAnchor();
        link.InnerText = dr["cate_name"].ToString();
        link.HRef = "CateProducts.aspx?cate_id=" + cateid + "&" + "catename=" + cate_name;
        li.Controls.Add(link);

        //for submenu
        DataTable subcate = new BALCate().GetSubCate(cateid);
        if (subcate.Rows.Count > 0)
        {
            div = new HtmlGenericControl("div");
            div.Attributes.Add("class", "sub-menu column-1");
            HtmlGenericControl sul = new HtmlGenericControl("ul");

            foreach (DataRow sdr in subcate.Rows)
            {
                int subcateid = int.Parse(sdr["subcate_id"].ToString());
                String subcatename = sdr["subcate_name"].ToString();
                HtmlGenericControl sli = new HtmlGenericControl("li");
                HtmlAnchor slink = new HtmlAnchor();
                slink.InnerHtml = sdr["subcate_name"].ToString();
                sli.Controls.Add(slink);
                slink.HRef = "SubCateProducts.aspx?subcate_id=" + subcateid + "&" + "catename=" + cate_name + "&" + "subcatename=" + subcatename;
                sul.Controls.Add(sli);

                DataTable subsubcate = new BALCate().GetSubSubCate(subcateid);
                if (subsubcate.Rows.Count > 0)
                {
                    HtmlGenericControl subdiv = new HtmlGenericControl("div");
                    subdiv.Attributes.Add("class", "sub-menu");
                    HtmlGenericControl ssul = new HtmlGenericControl("ul");

                    foreach (DataRow ssdr in subsubcate.Rows)
                    {
                        int subsubcateid = int.Parse(ssdr["subsubcate_id"].ToString());
                        String subsubcatename = ssdr["subsubcate_name"].ToString();
                        HtmlGenericControl ssli = new HtmlGenericControl("li");
                        HtmlAnchor sslink = new HtmlAnchor();
                        sslink.HRef = "SubSubCateProducts.aspx?subsubcate_id=" + subsubcateid + "&" + "catename=" + cate_name + "&" + "subcatename=" + subcatename + "&" + "subsubcatename=" + subsubcatename;
                        sslink.InnerText = ssdr["subsubcate_name"].ToString();
                        ssli.Controls.Add(sslink);
                        ssul.Controls.Add(ssli);
                    }
                    subdiv.Controls.Add(ssul);
                    sli.Controls.Add(subdiv);
                }
            }
            div.Controls.Add(sul);
            li.Controls.Add(div);
        }
        nav.Controls.Add(li);
    }
}`

actually there is also a master page, which contains DYNAMIC MENU in which data(categories and subcategories) dynamicly loaded from the database at the time of the pageload. but the iissue is that whenever i clicking on the link button , the menu doesnt retrieve the data from the database and appears blank with the remaining static part of it.

7
  • 1
    Do you ever attach an action to the button? Does it call the methods in the code you expect? Commented Oct 16, 2012 at 15:49
  • You need to implement Click event handler for LinkButton. Commented Oct 16, 2012 at 15:52
  • @adam: still not working(same issue), by including onclick event as u said. :) <asp:LinkButton ID="Submit" runat="server" CssClass="button" Text="Login" ValidationGroup="email" onclick="Submit_Click" /> the menu is not working Commented Oct 16, 2012 at 16:16
  • @AmitKumar Please include the code for "Submit_Click" in your post. Commented Oct 16, 2012 at 16:17
  • the dynamicly generated menu's aspx code is--><div class="set-size" runat="server"> <div class="categories" runat="server"> <ul runat="server" id="nav"> <li class="home" style="background-repeat: no-repeat; background-color: #94C23C; background-image: url(home.jpg); background-position: center;"><a href="index.htm">Home</a></li> <!--Dynamic menu--> </ul> </div> </div> Commented Oct 16, 2012 at 17:52

1 Answer 1

3

Add an onclick to the button to the method that does the data retrieving.

<asp:LinkButton ID="Submit" runat="server" CssClass="button" Text="Login" 
ValidationGroup="email" onclick="MethodName" />
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.