我在做数据结果展示的时候,想要实现一个如下的功能:
    用户可以选择一个时间段,默认显示这个时间段的汇总数据,当鼠标点击这个时间段的时候,将显示每个时间点的详细数据,再次点击的时候,详细数据收起,只显示汇总信息。
    功能是不是很简单?对于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

js动态显示表格的汇总信息和详细信息的更多相关文章

  1. php-fpm的status可以查看汇总信息和详细信息

    nginx.conf 配置文件 server { listen ; server_name localhost; index index.php index.html; root /home/tiny ...

  2. 解决 U2000 R017 安装报错: 检查SQL server数据库环境变量信息 ( 异常 ) [ 详细信息 ] PATH环境变量中缺少数据库路径的信息

    U2000 R017 安装报错: 检查SQL server数据库环境变量信息 ( 异常 ) [ 详细信息 ] PATH环境变量中缺少数据库路径的信息 管理员模式打开注册表位置: HKEY_LOCAL_ ...

  3. 利用JavaScript实现动态显示表格且对应改变按键的value值

    插入的代码并没有符合HTML5样式,只是为了实现利用JS动态显示表格,并且按键的value值会同时发生变化的功能. <!DOCTYPE > <html > <head&g ...

  4. 029. aps.net中DataView中详细信息的跳转显示

    点击当前页面的连接, 跳转到另一个页面, 然后进行更新删除等一系列操作 主要代码: <%@ Page Language="C#" AutoEventWireup=" ...

  5. 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息--3.3 Details用户详细信息]

    3.3 Details用户详细信息 用户详细信息是通过objectId获取.代码如下 public async Task<ActionResult> Details(string obje ...

  6. JS实现返回对象的详细信息

    使用JS有时会需要打印出对象的详细信息,下面方法可以实现: function ShowObjProperty(Obj) { var PropertyList=''; var PropertyCount ...

  7. js实现表格信息的删除和添加

    制作一个表格,显示班级的学生信息. 要求: 1. 鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff 2. 点击添加按钮,能动态在最后添加一行 3. 点击删除按钮 ...

  8. Asp.Net MVC 中JS通过ajaxfileupload上传图片获取身份证姓名、生日、家庭住址等详细信息

    客户要求用身份证图片上传获取身份证的详细信息就下来研究了一下(现在的客户真的懒 身份证信息都懒得输入了哈哈...),经过慢慢研究,果然皇天不负有心人搞出来了.这个借助的是腾讯的一个SKD  腾讯优图云 ...

  9. js如何实现动态显示表格数据(点奇数显示奇数单元格内容)

    js如何实现动态显示表格数据(点奇数显示奇数单元格内容) 一.总结 一句话总结: 1.动态指定表格中每个单元格的id,然后通过id可以获取每个单元格,然后对里面的innerHTML进行赋值. 2.弄了 ...

随机推荐

  1. js模版引擎handlebars.js实用教程——each嵌套

    <!DOCTYPE html> <html> <head> <META http-equiv=Content-Type content="text/ ...

  2. 【IOS】Target membership

    Target membership是指XCode中,一个文件属于哪一个工程,在XCode左侧的工程面板中选中一个文件,在XCode右侧的属性面板中会显示其Target Membership,如下图. ...

  3. 厚积薄发,拥抱 .NET 2016

    厚积薄发这个词是高三英语老师在高考前写在黑板上,高中三年努力这么久,是时候迎面而上,冲刺向前.所以,一想到.NET 2016,脑海里蹦出的第一个词就是它. .NET 2016 是 .NET 一次质的飞 ...

  4. 给UINavigationBar自定义颜色

    self.navigationController.navigationBar.barTintColor = RGB(55, 46, 41);    

  5. JSONP浅析

    DEMO : JSONP示例 为什么使用JSONP JSONP和JSON是不一样的.JSON(JavaScript Object Notation)是一种基于文本的数据交换方式,或者叫做数据描述格式. ...

  6. Atitit cms wordpress get_post  返回的WP_Post 规范 标准化

    Atitit cms wordpress get_post  返回的WP_Post 规范 标准化 public $ID; public $post_author = 0; * The post's l ...

  7. 开始使用MarkDown写博客

    MarkDown 标题 #h1 ##h2 ###h3 h1 h2 h3 代码段 代码段缩进4个空格即可,如下: <div class="form-group"> < ...

  8. 动手搭个wordpress

    看到很多人都是自己搭建博客服务器,然后一切都在自己的掌控之下,这样就不存在什么迁移,数据安全之类的问题,当然需要自己搞个空间了,不过现在都便宜的不行,$15/year,也是醉了.我不怎么写博客,但是个 ...

  9. Struts2学习笔记 - HelloWorld总结

    相信网上已经有很多关于struts2的HelloWorld可参考,我这里就不重复了,没个学struts2的人都会做过很多个HelloWorld,而我这里就总结一下一个简单的HelloWorld 我在一 ...

  10. Java基础-接口中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按 照国务院的指示进行安全生产。请编写一个java应用程序描述上述的体制现象。 要求如下: (1)该应用程序中有一个“党中央”接口:CentralPartyCommittee,该接口中 有个“坚持党的领导”方法:void partyLeader() (2)该应用程序中有一个“国务院”抽象类:StateCouncil,

    36.中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按 照国务院的指示进行安全生产.请编写一个java应用程序描述上述的体制现象. 要求如下: (1)该应用程序中有一个“党中央”接口 ...