Jquery实现推拉式菜单,并实现图标的折叠和展开

最近项目中为了使查看时视图更清晰明了,需要实现一个分组展示的功能,这里用Jquery做了一个,记录下来,以便下次使用,效果如图所示:

 

CSS代码:

  .sapdiv{
    width:16px;
    height:17px;
    background:url(../images/sap01_data_item_tab02.gif) ;
}

.sapdiv1{
    width:16px;
    height:17px;
    background:url(../images/sap01_data_item_tab01.gif) ;
}


前台代码:

<asp:ListView ID="ListView1" runat="server" EnableModelValidation="True" OnItemDataBound="ListView1_ItemDataBound"
                        OnPreRender="ListView1_PreRender">
                        <EmptyDataTemplate>
                            <table width="100%" class="data_header">
                                <tr>
                                    <td rowspan="2" class="t12s" width="60">
                                        操作
                                    </td>
                                    <td rowspan="2" class="t12s" width="150">
                                        项目名称
                                    </td>
                                    <td rowspan="2" class="t12s" width="180">
                                        主要建设内容
                                    </td>
                                    <td rowspan="2" class="t12s" width="60">
                                        建设性质
                                    </td>
                                    <td rowspan="2" class="t12s" width="60">
                                        建设年限
                                    </td>
                                    <td rowspan="2" class="t12s" width="80">
                                        申请资金
                                    </td>
                                    <td colspan="4" class="t12s" style="background-color: #C0C0C0">
                                        <% =year.ToString() %>年投资建议计划
                                    </td>
                                    <td rowspan="2" class="t12s">
                                        备注
                                    </td>
                                </tr>
                                <tr>
                                    <td width="60">
                                        合计
                                    </td>
                                    <td width="60">
                                        总部投资
                                    </td>
                                    <td width="60">
                                        企业自筹
                                    </td>
                                    <td width="60">
                                        其他
                                    </td>
                                </tr>
                            </table>
                            <table width="100%" class="data_item">
                                <tr>
                                    <td colspan="12">
                                        没有数据!
                                    </td>
                                </tr>
                            </table>
                        </EmptyDataTemplate>
                        <ItemTemplate>
                            <table class="data_item">
                                <tr>
                                    <th style="width:40px;">
                                        <div class="sapdiv1">
                                            <a href="#"></a>
                                        </div>
                                    </th>
                                    <th colspan="12" class="data_item_separ" style="width: 95%;">
                                        <strong>企业名称:<asp:Label ID="lblOrgName" runat="server" Text='<%# Eval("OrganizationName") %>' />
                                            (版本:<asp:Label ID="lblVersion" runat="server" Text='<%# Eval("PlanVersion") %>' />.0)<span style="color:Red;">【<asp:Label ID="Label1" runat="server" Text='<%# Eval("OrgNatureName") %>' />】</span>
                                            <asp:HiddenField ID="hfOrgId" runat="server" Value='<%# Eval("OrganizationId") %>' />
                                        </strong>
                                    </th>
                                </tr>
                            </table>
                            <div class="data_table1" id="detail<%# Container.DataItemIndex %>">
                                <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" ShowHeader="false"
                                    DataKeyNames="ProjectPlanId" EmptyDataText="没有可显示的数据记录。" EnableModelValidation="True"
                                    Width="100%" CssClass="data_item">
                                    <Columns>
                                        <asp:TemplateField ShowHeader="False" HeaderText="操作">
                                            <ItemTemplate>
                                                <asp:CheckBox ID="ckItem" runat="server" />
                                            </ItemTemplate>
                                            <ItemStyle Width="40" />
                                        </asp:TemplateField>
                                        <asp:TemplateField ShowHeader="False" HeaderText="操作">
                                            <ItemTemplate>
                                                <asp:ImageButton ID="ImageButton3" runat="server" ImageUrl="~/Images/licon_005.gif" OnClientClick='<%# Eval("ProjectPlanId","return JumpViewProjectPlan(\"{0}\")") %>'
                                                    ToolTip="查看" CausesValidation="False" />
                                            </ItemTemplate>
                                            <ItemStyle Width="60" />
                                        </asp:TemplateField>
                                        <asp:BoundField DataField="ProjectPlanName" HeaderText="项目名称" ItemStyle-Width="150" />
                                        <asp:TemplateField HeaderText="主要建设内容">
                                            <ItemTemplate>
                                                <div style="text-align: left">
                                                    <asp:Label ID="Label2" runat="server" Text='<%# ReWriteBuildString(Eval("ProjectPlanContent"),15) %>'
                                                        ToolTip='<%# Eval("ProjectPlanContent") %>'></asp:Label>
                                                </div>
                                            </ItemTemplate>
                                            <ItemStyle Width="180" />
                                        </asp:TemplateField>
                                        <asp:TemplateField HeaderText="建设性质">
                                            <ItemTemplate>
                                                <asp:Label ID="LabelStatus" runat="server" Text='<%# GetBuildString(Eval("ProjectType")) %>'></asp:Label>
                                            </ItemTemplate>
                                            <ItemStyle Width="60" />
                                        </asp:TemplateField>
                                        <asp:BoundField DataField="ProjectPlanYearBuild" HeaderText="建设年限" ItemStyle-Width="60" />
                                        <asp:TemplateField HeaderText="申请资金">
                                            <ItemTemplate>
                                                <asp:Label ID="LabelMoneyRequest" runat="server" Text='<%# FormatMoney(Eval("MoneyRequest")) %>'></asp:Label>
                                            </ItemTemplate>
                                            <ItemStyle Width="80" />
                                        </asp:TemplateField>
                                        <asp:TemplateField HeaderText="合计">
                                            <ItemTemplate>
                                                <asp:Label ID="LabelMoneySum" runat="server" Text='<%# FormatMoney(Eval("MoneySum")) %>'></asp:Label>
                                            </ItemTemplate>
                                            <ItemStyle Width="60" />
                                        </asp:TemplateField>
                                        <asp:TemplateField HeaderText="总部投资">
                                            <ItemTemplate>
                                                <asp:Label ID="LabelMoneyGroup" runat="server" Text='<%# FormatMoney(Eval("MoneyGroup")) %>'></asp:Label>
                                            </ItemTemplate>
                                            <ItemStyle Width="60" />
                                        </asp:TemplateField>
                                        <asp:TemplateField HeaderText="企业自筹">
                                            <ItemTemplate>
                                                <asp:Label ID="LabelMoneyCompany" runat="server" Text='<%# FormatMoney(Eval("MoneyCompany")) %>'></asp:Label>
                                            </ItemTemplate>
                                            <ItemStyle Width="60" />
                                        </asp:TemplateField>
                                        <asp:TemplateField HeaderText="其他">
                                            <ItemTemplate>
                                                <asp:Label ID="LabelMoneyOther" runat="server" Text='<%# FormatMoney(Eval("MoneyOther")) %>'></asp:Label>
                                            </ItemTemplate>
                                            <ItemStyle Width="60" />
                                        </asp:TemplateField>
                                        <asp:TemplateField HeaderText="备注">
                                            <ItemTemplate>
                                                <div style="text-align: left">
                                                    <asp:Label ID="Label3" runat="server" Text='<%# ReWriteBuildString(Eval("ProjectPlanRemark"),15) %>'
                                                        ToolTip='<%# Eval("ProjectPlanRemark") %>'></asp:Label>
                                                </div>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                    </Columns>
                                </asp:GridView>
                            </div>
                        </ItemTemplate>
                        <LayoutTemplate>
                            <table id="Table2" runat="server" style="width: 100%">
                                <tr id="Tr1" runat="server">
                                    <td id="Td1" runat="server">
                                        <table class="data_header" style="width: 100%" class="data_header">
                                            <tr id="Tr2" runat="server">
                                                <td id="Td15" runat="server" rowspan="2" class="t12s" width="40">
                                                    操作
                                                </td>
                                                <td id="Td2" runat="server" rowspan="2" class="t12s" width="60">
                                                    查看详细
                                                </td>
                                                <td id="Td3" runat="server" rowspan="2" class="t12s" width="150">
                                                    项目名称
                                                </td>
                                                <td id="Td4" runat="server" rowspan="2" class="t12s" width="180">
                                                    主要建设内容
                                                </td>
                                                <td id="Td5" runat="server" rowspan="2" class="t12s" width="60">
                                                    建设性质
                                                </td>
                                                <td id="Td7" runat="server" rowspan="2" class="t12s" width="60">
                                                    建设年限
                                                </td>
                                                <td id="Td8" runat="server" rowspan="2" class="t12s" width="80">
                                                    申请资金
                                                </td>
                                                <td id="Td11" runat="server" colspan="4" class="t12s" style="background-color: #C0C0C0">
                                                    <% =year.ToString() %>年投资建议计划
                                                </td>
                                                <td id="Td9" runat="server" rowspan="2" class="t12s">
                                                    备注
                                                </td>
                                            </tr>
                                            <tr id="Tr3" runat="server" class="separator_bottom">
                                                <td id="Td16" runat="server" width="60">
                                                    合计
                                                </td>
                                                <td id="Td17" runat="server" width="60">
                                                    总部投资
                                                </td>
                                                <td id="Td19" runat="server" width="60">
                                                    企业自筹
                                                </td>
                                                <td id="Td20" runat="server" width="60">
                                                    其他
                                                </td>
                                            </tr>
                                            <tr id="itemPlaceholder" runat="server" class="data_item">
                                            </tr>
                                        </table>
                                    </td>
                                </tr>
                            </table>
                        </LayoutTemplate>
                    </asp:ListView>


脚本部分:

<script type="text/javascript">

    $(document).ready(function () {

        $(".data_table1").hide();

        $(".sapdiv1").click(function () {
            $(".data_table1").hide();
            $("div.sapdiv").each(function () {
                $(this).removeClass();
                $(this).addClass("sapdiv1");
            });

            $(this).removeClass();
            $(this).addClass("sapdiv");
            $(this).parent().parent().parent().parent().next().show();

            //cookie.set("cookieName", $(this).attr("id"));
        });

        var current = null; //cookie.get("cookieName");
        if (current) {
            $(current).removeClass();
            $(current).addClass("sapdiv");
            $(current).parent().parent().parent().parent().next().show();
        } else {
            var items = $(".sapdiv1");
            if (items.length > 0) {
                $(items[0]).parent().parent().parent().parent().next().show();
                $(items[0]).attr("class", "sapdiv");
            }
        }
    });
</script>


该脚本还可以通过cookie保存选中的状态,这里没有实现,有兴趣的同学可以晚上一下,发布到留言里。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值