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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Kotlin之JSON格式解析

    kotlin解析json文件第一步:首先导入KlaXon库,官网地址是:https://github.com/cbeust/klaxon导入成功后我们将试着编译一个Json资源第二步:编译开始valJsonObjec=json{obj(“name”to“zhangsan”,“age”33)}这是第一种创建方式类似{“name”:“zhangsan”“age”=3…

  • C++字符串流stringstream与string知识介绍与用法小结

    C++字符串流stringstream与string知识介绍与用法小结之前总结了C++的文件输出输入流的相关知识,通过介绍底层的streambuf缓冲区,从而与stringstream流(字符串流)联系了起来,本文就对此进行简单的介绍。首先介绍string。string是C++提供的字符串类,和C类型的字符串相比,除了有不限长度的优点外,还有其他许多方便的功能,其可以看成类似STL里vector数组的一种容器,可以方便的进行数据的增删改查,并可以进行…

  • 手机版java编译器_Java编译器[通俗易懂]

    手机版java编译器_Java编译器[通俗易懂]这是一款专为学习Java的学员们打造的一款非常优质的程序验证软件,让用户能够非常快速的复制自己的程序到APP中,进行检验,能够非常快速的去验证程序的内容,能够非常及时的进行纠错,让你的代码能够及时的得到解决,用户可以随时在这里打开使用,保证自己的编辑的代码能够更加的完美,让你可以更好的精心纠错,对于初学者来说是一款非常棒的软件,让自己能够学的更好,经验能够更加的丰富。软件特点验证代码非常简单快捷,…

  • ResNet18代码实现[通俗易懂]

    ResNet18代码实现[通俗易懂]importtensorflowastffromtensorflowimportkerasfromtensorflow.kerasimportlayers,Sequential,Model,datasets,optimizers#自定义的预处理函数defpreprocess(x,y):#调用此函数时会自动传入x,y对象,shape为[b,28,28],[b]#标准化到0-1x=2*tf.cast(x,dtype=t…

  • 新加坡a50股指期货 实时行情_新加坡a50期货指数

    新加坡a50股指期货 实时行情_新加坡a50期货指数实时采集新加坡交易所A50指数

  • C# 字节数组截取

    C# 字节数组截取C#字节数组截取如:byte[]bt=newbyte[]{0,1,2,3,4,5,6,7,8,9};方法一截取位数规则1)截取2位长度的字节数组用BitConverter.ToInt16例如,从第2位开始截取2个字节则BitConverter.ToInt16(bt,2);2)截取4位长度的字节数组用BitConverter.ToInt32例如…

发表回复

您的电子邮箱地址不会被公开。

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