您现在的位置:首页 >> 前端 >> 内容

简单的二级菜单

时间:2013/6/27 15:58:24 点击:

  核心提示:[html]%@ Page Language=C# AutoEventWireup=true CodeBehind=daohang.aspx.cs Inherits=_0A_ANXIN.daohang...
[html]
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="daohang.aspx.cs" Inherits="_0A_ANXIN.daohang" %> 
 
<!DOCTYPE html> 
 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
    <title></title> 
    <script src="js/Jquery1.7.js"></script> 
    <script type="text/javascript"> 
        $(function () { 
            //*******************一级菜单点击****************** 
            var yijicaidan;//上一次点击的元素 
            $('.p_ul_li').click(function () { 
                $(this).css({ 'background-color': '#555' }); 
                $(this).unbind('mouseover').unbind('mouseout');//给点击的元素解绑,不再随着鼠标的变化而变化 
                $(this).parent().children('p:last').css('display', $(this).parent().children('p:last').css('display') == 'none' ? 'initial' : 'none'); 
                if (yijicaidan != null && yijicaidan.text() != $(this).text()) {//判断是不是同一个元素 
                    yijicaidan.css({ 'background-color': '#eee' });//初始化上一次点击的p的背景颜色 
                    yijicaidan.parent().children('p:last').css('display', 'none');//隐藏上一次点击的元素的二级菜单 
                    yijicaidan.bind('mouseover', function () { 
                        $(this).css({ 'background-color': '#aaa' }); 
                    })//给上一次点击的元素帮顶mouseover事件 
                    yijicaidan.bind('mouseout', function () { 
                        $(this).css({ 'background-color': '#eee' }); 
                    })//给上一次点击的元素帮顶mouseout事件 
                    yijicaidan = null; 
                } 
                yijicaidan = $(this); 
            }) 
            //*******************一级效果*********************** 
            $('.p_ul_li').bind('mouseover', function () { 
                $(this).css({'background-color':'#aaa'}); 
            }) 
            $('.p_ul_li').bind('mouseout', function () { 
                $(this).css({ 'background-color': '#eee' }); 
            }) 
 
 
            var erjicaidan;////上一次点击的元素 
            //********************二级菜单点击********************* 
            $('.p_ul_li_p ul li').click(function () { 
                if (erjicaidan!=null) { 
                    erjicaidan.css({ 'background-color': '#def' });//初始化所有的二级菜单背景 
                } 
                window.open($(this).children('input').val(), "content"); 
                $(this).css({ 'background-color': '#789' }).unbind('mouseover').unbind('mouseout'); 
                if (erjicaidan != null && erjicaidan.text() != $(this).text()) {//判断是不是同一个元素 
                    erjicaidan.css({ 'background-color': '#def' });//初始化上一次点击的p的背景颜色 
                    erjicaidan.bind('mouseover', function () { 
                        $(this).css({ 'background-color': '#abc' }); 
                    })//给上一次点击的元素帮顶mouseover事件 
                    erjicaidan.bind('mouseout', function () { 
                        $(this).css({ 'background-color': '#def' }); 
                    })//给上一次点击的元素帮顶mouseout事件 
                    erjicaidan = null; 
                } 
                erjicaidan = $(this); 
            }) 
            //*******************二级效果*********************** 
            $('.p_ul_li_p ul li').bind('mouseover', function () { 
                $(this).css({ 'background-color': '#abc' }); 
            }) 
            $('.p_ul_li_p ul li').bind('mouseout', function () { 
                $(this).css({ 'background-color': '#def' }); 
            }) 
        }) 
    </script> 
    <style type="text/css"> 
        /***********第一级菜单***********/ 
        #p_ul { 
            list-style-type: none; 
        } 
        .p_ul_li { 
            cursor: pointer; 
            background-color: #eee; 
            padding: 5px 0 5px 5px; 
            margin-left: -40px; 
            font-size:15px; 
        } 
        /***********第二级菜单***********/ 
        .p_ul_li_p ul { 
            list-style-type: none; 
        } 
            .p_ul_li_p ul li { 
                cursor: pointer; 
                margin-left:-80px; 
                padding:5px 0 5px 15px; 
                background-color:#def; 
                font-size:12px; 
            } 
    </style> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <p> 
    <ul id="p_ul" runat="server"> 
        <li> 
            <p class="p_ul_li"> 
                我的工作 
            </p> 
            <p class="p_ul_li_p" style="display:none;"> 
                <ul> 
                    <li> 
                        我的消息<input type="hidden" value="http://www.baidu.com"> 
                    </li> 
                    <li> 
                        我的邮件<input type="hidden" value="http://www.baidu.com"> 
                    </li> 
                    <li> 
                        我的短信<input type="hidden" value="http://www.baidu.com"> 
                    </li> 
                </ul> 
            </p> 
        </li> 
        <li> 
            <p class="p_ul_li"> 
                计划/考勤 
            </p> 
            <p class="p_ul_li_p" style="display:none;"> 
                <ul> 
                    <li> 
                        aaa<input type="hidden" value="http://www.baidu.com"> 
                    </li> 
 
                </ul> 
            </p> 
        </li> 
        <li> 
            <p class="p_ul_li"> 
                公文处理 
            </p> 
            <p class="p_ul_li_p" style="display:none;"> 
                <ul> 
                    <li> 
                        aaa<input type="hidden" value="http://www.baidu.com"> 
                    </li> 
                </ul> 
            </p> 
        </li> 
        <li> 
            <p class="p_ul_li"> 
                资源/会议 
            </p> 
            <p class="p_ul_li_p" style="display:none;"> 
                <ul> 
                    <li> 
                        aaa<input type="hidden" value="http://www.baidu.com"> 
                    </li> 
                </ul> 
            </p> 
        </li> 
        <li> 
            <p class="p_ul_li"> 
                车辆/司机 
            </p> 
            <p class="p_ul_li_p" style="display:none;"> 
                <ul> 
                    <li> 
                        aaa<input type="hidden" value="http://www.baidu.com"> 
                    </li> 
                </ul> 
            </p> 
        </li> 
    </ul> 
    </p> 
    </form> 
</body> 
</html> 
 
这里前台的内容只是例子,实际要显示的内容是从后台读取的数据库。下面有后台和数据库的截图 
 
后台: 
 
protected void Page_Load(object sender, EventArgs e) 
        { 
            GetReader(); 
        } 
        void GetReader() 
        { 
            p_ul.InnerHtml = ""; 
            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["str"].ConnectionString); 
            SqlCommand cmd = new SqlCommand(); 
            cmd.Connection = con; 
            cmd.CommandText = "Pro_select_guilei"; 
            cmd.CommandType = System.Data.CommandType.StoredProcedure; 
            SqlDataAdapter adapter = new SqlDataAdapter(cmd); 
            DataTable dt = new DataTable(); 
            adapter.Fill(dt); 
            StringBuilder strs = new StringBuilder(); 
            foreach (DataRow item in dt.Rows) 
            { 
                strs.Append("<li><p class=\"p_ul_li\">"+item["name"]+"</p><p class=\"p_ul_li_p\" style=\"display:none;\"><ul>"); 
                cmd.CommandText = "Pro_select_caidan"; 
                cmd.CommandType = CommandType.StoredProcedure; 
                cmd.Parameters.Clear(); 
                cmd.Parameters.Add(new SqlParameter("@fatherid", item["contentid"])); 
                adapter.SelectCommand = cmd; 
                DataTable dtd = new DataTable(); 
                adapter.Fill(dtd); 
                foreach (DataRow item1 in dtd.Rows) 
                { 
                    strs.Append("<li>"+item1["name"]+"<input type='hidden' value='"+item1["url"]+"' /></li>"); 
                } 
                strs.Append("</ul></p></li>"); 
            } 
            adapter.Dispose(); 
            cmd.Dispose(); 
            con.Dispose(); 
            p_ul.InnerHtml = strs.ToString(); 
        } 

作者:网络 来源:不详