javascript实现Table间隔色以及选择高亮(和动态切换数据)的方法


Posted in Javascript onMay 14, 2015

本文实例讲述了javascript实现Table间隔色以及选择高亮(和动态切换数据)的方法。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Table间隔色以及选择高亮(和动态切换数据)</title>
<script type="text/javascript">
var Datas1 = {
  "李莫": "毕业于清华大学",
  "周平": "毕业于北京大学",
  "罗达": "毕业于哈尔滨大学",
  "郑朵": "毕业于河南大学",
  "王天": "毕业于湖南大学"
};
var Datas2 = {
  "三水点靠木": "https://3water.com",
  "搜狐网": "http://www.souhu.com",
  "CSDN程序员开发网站": "http://www.csdn.net",
  "百度": "http://www.baidu.com",
  "网易": "http://www.163.com"
};
function ToggleData() {
  var btn = document.getElementById("btnToggle");
  if (btn.value == "数据1") {
    loadData(Datas1, "数据2");
  }
  else {
    loadData(Datas2, "数据1");
  }
}
function loadData(Datas,btnValue) {
  var tblMain = document.getElementById("tblMain");
  //清空table数据
  var trs = tblMain.getElementsByTagName("tr");
  var trsLen = trs.length;
  //必须先把trs的长度存放到一个变量中
  for (var i = 0; i < trsLen; i++) {
    tblMain.deleteRow(0);
  }
  var nIndex = 0;
  for (var key in Datas) {
    var tr = tblMain.insertRow(-1);
    tr.onmouseover = trMouseOver;
    tr.onmouseout = trMouseOut;
    var td1 = tr.insertCell(-1);
    td1.innerHTML = key;
    var td2 = tr.insertCell(-1);
    td2.innerHTML = Datas[key];
    if (nIndex % 2 == 0) { //设置间隔色
      tr.style.background = "yellow";
    }
    else {
      tr.style.background = "white";
    }
    nIndex++;
  }
  var btn = document.getElementById("btnToggle");
  btn.value = btnValue;
}
function trMouseOver() {
  var tblMain = document.getElementById("tblMain");
  //清空数据
  var trs = tblMain.getElementsByTagName("tr");
  for (var i = 0; i < trs.length; i++) {      
    if (this == trs[i]) {
      trs[i].style.background = "green";
    }
  }
}
function trMouseOut() {
  var tblMain = document.getElementById("tblMain");
  var trs = tblMain.getElementsByTagName("tr");
  for (var i = 0; i < trs.length; i++) {
    if (i % 2 ==0) {
      trs[i].style.background = "yellow";
    }
    else {
      trs[i].style.background = "white";
    }
  }      
}
function iniEvent() {
  loadData(Datas1, "数据2");
}
</script>
</head>
<body onload="iniEvent()">
<table id="tblMain">
<tbody></tbody>
</table>
<input type ="button" id="btnToggle" value="数据2"
onclick="ToggleData()" />
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
按给定几率进行随机抽取的js代码
Dec 28 Javascript
游览器中javascript的执行过程(图文)
May 20 Javascript
深入理解JavaScript是如何实现继承的
Dec 12 Javascript
jQuery 1.9移除了$.browser可以使用$.support来替代
Sep 03 Javascript
jquery结合CSS使用validate实现漂亮的验证
Jan 29 Javascript
javascript实现状态栏文字首尾相接循环滚动的方法
Jul 22 Javascript
JS实现的仿QQ空间图片弹出效果代码
Feb 23 Javascript
原生js编写autoComplete插件
Apr 13 Javascript
js实现登录框鼠标拖拽效果
Mar 09 Javascript
在Web关闭页面时发送Ajax请求的实现方法
Mar 07 Javascript
微信小程序以7天为周期连续签到7天功能效果的示例代码
Aug 20 Javascript
vue3.0 加载json的方法(非ajax)
Oct 26 Javascript
javascript清空table表格的方法
May 14 #Javascript
AngularJS的内置过滤器详解
May 14 #Javascript
javascript实现带下拉子菜单的导航菜单效果
May 14 #Javascript
javascript实现dom动态创建省市纵向列表菜单的方法
May 14 #Javascript
javascript基于DOM实现权限选择实例分析
May 14 #Javascript
javascript中DOM复选框选择用法实例
May 14 #Javascript
JS对字符串编码的几种方式使用指南
May 14 #Javascript
You might like
php5数字型字符串加解密代码
2008/04/24 PHP
flash用php连接数据库的代码
2011/04/21 PHP
PHP将字符串首字母大小写转换的实例
2017/01/21 PHP
PHP defined()函数的使用图文详解
2019/07/20 PHP
javascript 极速 隐藏/显示万行表格列只需 60毫秒
2009/03/28 Javascript
jQuery Mobile 导航栏代码
2013/11/01 Javascript
JavaScript 事件对象介绍
2015/04/13 Javascript
jQuery中 attr() 方法使用小结
2015/05/03 Javascript
javaScript事件机制兼容【详细整理】
2016/07/23 Javascript
jQuery组件easyui基本布局实现代码
2016/08/25 Javascript
jQuery实现获取元素索引值index的方法
2016/09/18 Javascript
基于JavaScript实现焦点图轮播效果
2017/03/27 Javascript
javascript 取小数点后几位几种方法总结
2017/08/02 Javascript
史上最全JavaScript数组去重的十种方法(推荐)
2017/08/17 Javascript
ES6中新增的Object.assign()方法详解
2017/09/22 Javascript
解决mpvue + vuex 开发微信小程序vuex辅助函数mapState、mapGetters不可用问题
2018/08/03 Javascript
vue2.0 路由模式mode=&quot;history&quot;的作用
2018/10/18 Javascript
vue中如何去掉空格的方法实现
2018/11/09 Javascript
js实现图片放大并跟随鼠标移动特效
2019/01/18 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
简单的抓取淘宝图片的Python爬虫
2014/12/25 Python
名片管理系统python版
2018/01/11 Python
Python2和Python3中urllib库中urlencode的使用注意事项
2018/11/26 Python
Python JSON格式数据的提取和保存的实现
2019/03/22 Python
Python 转换RGB颜色值的示例代码
2019/10/13 Python
Ubuntu下Python+Flask分分钟搭建自己的服务器教程
2019/11/19 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
Sephora丝芙兰马来西亚官方网站:国际化妆品购物
2018/03/15 全球购物
装饰公司活动策划方案
2014/08/23 职场文书
家长评语怎么写
2014/12/30 职场文书
先进个人评语大全
2015/01/04 职场文书
2015年青年志愿者协会工作总结
2015/04/27 职场文书
简历自我评价:教师师德表现自我评价
2019/04/24 职场文书
Nginx的反向代理实例详解
2021/03/31 Servers
MySQL 原理与优化之Limit 查询优化
2022/08/14 MySQL