js动态显示表格的汇总信息和详细信息

我在做数据结果展示的时候,想要实现一个如下的功能:用户可以选择一个时间段,默认显示这个时间段的汇总数据,当鼠标点击这个时间段的时候,将显示每个时间点的详细数据,再次点击的时候,详细数据收起,只显示汇

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

js动态显示表格的汇总信息和详细信息我在做数据结果展示的时候,想要实现一个如下的功能:
    用户可以选择一个时间段,默认显示这个时间段的汇总数据,当鼠标点击这个时间段的时候,将显示每个时间点的详细数据,再次点击的时候,详细数据收起,只显示汇总信息。
    功能是不是很简单?对于javascript高手和熟手来说很简单了,不过对于我这个新人来说,还是搞了好一会儿才弄好。下面show一下我的代码,希望js高手能指点一二:
  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<head>
    <title>Ad Click _何问起 </title>
    <style type="text/css">
        .showdate{
            text-decoration:underline;
        }
        
        #forms {
            margin-top:20px;
            width:1000px;
            height:40px;
            margin:0px aut0;
            border-collapse:collapse;
            text-align:center;
        }
        #forms form{
            display:block;
            float:right;
            margin-left:10px;
        }
    </style>
        <script language="javaScript">
        function showdetails(flagname)
        {
            var t = document.getElementsByTagName('table');
        
            var reg= new RegExp(flagname);
            for (var i=0;i<t.length;i++)
            {
                var tr = t[i].getElementsByTagName('tr');
                for (var j=0; j<tr.length;j++)
                {
                    var names= tr[j].id;
                    if(reg.test(tr[j].id)) 
                    {
                        if(tr[j].style.display=='none')
                        {
                            tr[j].style.display = '';
                        }else
                        {
                            tr[j].style.display ='none';
                        }
                    }
                }
            }
        }
        </script>
</head>

<body>
<H2 align="center">
        20080411 - 20080413 PageViews
</H2>
<p>
    
<div id="forms">        
        <form  method="POST" action="" target="_self">
            开始日期:<input type="text" name="startdate" value="20080413">
            结束日期:<input type="text" name="enddate" value="20080413">
            <input type=submit value="查询">

        </form>
</div>
<table id="gross" style="" align="center" border="1" borderColor=gray cellPadding=3 class="bowser" >
<tr>
    <th>统计日期</th>
    <th>hostname</th>
    <th>PV</th>
</tr>
<tr>
    <td class="showdate" onclick="showdetails('flag0');">20080412-20080413</td>
    <td> aa.bb.com</td>
    <td>152,679</td>
</tr>
<tr id=flag0_0 style="display:none"> 
    <td>20080413</td>
    <td> aa.bb.com</td>
    <td>152,527</td>
</tr>
<tr id=flag0_1 style="display:none"> 
    <td>20080412</td>
    <td> aa.bb.com</td>
    <td>152</td>
</tr>    
<tr>
    <td class="showdate" onclick="showdetails('flag1');">20080412-20080413</td>
    <td> cc.bb.com</td>
    <td>152,679</td>
</tr>
<tr id=flag1_0 style="display:none"> 
    <td>20080413</td>
    <td> cc.bb.com</td>
    <td>152,527</td>
</tr>
<tr id=flag1_1 style="display:none"> 
    <td>20080412</td>
    <td> cc.bb.com</td>
    <td>152</td>
</tr>    
</table>
<a href="http://hovertree.com/">何问起</a>
</body>
</html>

 

 
其主要功能就是要设置好每个tr的id,然后在Javasript中调用document.getElementByTagName(‘tr’)函数找到指定的tr的object集合,然后在判断每个tr的名字是否与指定的字符串匹配(var reg= new RegExp(‘flag0’); reg.test(object.id)),如果匹配,那么就将该tr的style.display设置成显示或者不显示就ok了。

JavaScript说难也不难,说简单也不简单啊!

推荐:http://www.cnblogs.com/roucheng/p/texiao.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120504.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月24日 下午3:00
下一篇 2021年12月24日 下午3:00


相关推荐

  • STM32 + UCOSII 操作系统(简单讲解)「建议收藏」

    STM32 + UCOSII 操作系统(简单讲解)「建议收藏」前言这是我将UCOSII操作系统移植在STM32单片机上后进行UCOSII操作系统学习的一些笔记与理解,此文最后会附上我自己在UCOSII操作系统下使用STM32写的ESP8266+onenet+http协议的程序链接,可以作为参考,如果文中有不当的地方,还请各位大佬加以中指正,我一定会虚心求教。参考资料:正点原子RTOS操作系统讲解,参考的文章:(53条消息)STM32学习笔记一一UCOSII(1)_霁风AI-CSDN博客_ucosii1.UCOSII操作系统的简介前台后台系统相信大家都

    2022年6月4日
    37
  • 阿里云搭建svn服务器_如何搭建家用云服务器

    阿里云搭建svn服务器_如何搭建家用云服务器最近买了华为云服务器(ubuntuserver14.04),准备玩玩云,本文就是记录一下如何在华为云上搭建SVN服务器,跟阿里云上搭建SVN服务器还是有点区别的。第一次登录或第一次用SSH远程登录,需要跟客服要文档。华为云的安全策略,第一次使用apache2服务,需要看如何修改安全策略,增加80端口的公网访问,80端口是Apache2服务的默认端口。修改安全策略帮助帮助(1)安装软件

    2022年10月17日
    5
  • 最新扣子(Coze)实战教程:Coze工作流自动回复客户邮件, 自动收邮件+邮件分析+自动回复邮件,3步提升客服效率10倍!

    最新扣子(Coze)实战教程:Coze工作流自动回复客户邮件, 自动收邮件+邮件分析+自动回复邮件,3步提升客服效率10倍!

    2026年3月12日
    2
  • dsu on tree(树上启发式合并)详解

    dsu on tree(树上启发式合并)详解树上启发式合并详解

    2026年3月17日
    2
  • 微型计算机原理与接口技术网课_微型计算机原理与接口技术周荷琴

    微型计算机原理与接口技术网课_微型计算机原理与接口技术周荷琴微型计算机组成原理课程内容介绍第一章微型计算机基础第二章80X80微型处理器第三章汇编语言指令集第四章汇编语言程序设计第五章输入/输出系统第六章中断系统第七章微型计算机系统串行通讯第八章并行I/O接口第九章可编程定时/计数器课程意义汇编语言接口技术学习目标本笔记的视频,源自中国大学MOOC,南京邮电大学的微型计算机原理与接口技术。课程内容介绍第一章微型计算机基础这一章将…

    2022年10月2日
    5
  • dw自动滚动图片_DW图片无缝滚动代码

    dw自动滚动图片_DW图片无缝滚动代码DIV的图片无缝滚动,DIV图片上无缝滚动,DIV图片下无缝滚动,DIV图片左无缝滚动,DIV图片右无缝滚动1.先了解一下对象的几个的属性:innerHTML:设置或获取位于对象起始和结束标签内的HTMLscrollHeight:获取对象的滚动高度。scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶…

    2022年7月18日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号