js实现往表格动态添加学生的学号、姓名、语数英的考试成绩和总分(总分不是填写),实现行与行之的颜色相间,高光的效果
2017-04-22 16:13
1011 查看
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>学生成绩表</title> <style> *{ padding: 0; margin: 0; } body{ font-family: "微软雅黑"; color: #999; margin: 20px; } .form{margin-bottom:20px ;} input[type=text]{ font-size: 14px; width: 80px; height: 20px; border: none; outline: none; border: 1px solid #999; line-height: 20px; margin: 0 10px 0 3px; padding-left: 5px; } table{ border: 1px solid #999; border-collapse: collapse; width: 820px ; } table th, table td { border: 1px solid black; text-align:center; width: 116px; } </style> </head> <body> <div class="form"> <label for="">学号:<input type="text" /></label> <label for="">姓名:<input type="text" /></label> <label for="">语文成绩:<input type="text" /></label> <label for="">数学成绩:<input type="text" /></label> <label for="">英语成绩:<input type="text" /></label> <input type="button" value="添加" onclick="addData()"/> </div> <table > <thead> <tr><th>学号</th><th>姓名</th><th>语文成绩</th><th>数学成绩</th><th>英语成绩</th><th>总分</th><th>操作</th></tr> </thead> <tbody> </tbody> </table> </body> <script type="text/javascript"> //(function(){ var oTable = document.querySelector('table'); // 隔行变色 function foo1(){ for(i=0;i<oTable.tBodies[0].rows.length;i++){ if(i%2==0){ oTable.tBodies[0].rows[i].style.backgroundColor = '#99CCCC'; }else{ oTable.tBodies[0].rows[i].style.backgroundColor = '#99CC99'; } } }; //高光效果 function foo2(){ for(i=0;i<oTable.tBodies[0].rows.length;i++){ oTable.tBodies[0].rows[i].onmouseover=function(){ oldBg = this.style.backgroundColor; this.style.backgroundColor = '#3333FF'; } oTable.tBodies[0].rows[i].onmouseout=function(){ this.style.backgroundColor = oldBg; } } }; function addData(){ // 1. 获取到所有的input标签 var oInputs = document.getElementsByTagName('input'); // 2. 拼接td var sTd = '<td>'+oInputs[0].value+ '</td><td>'+oInputs[1].value+ '</td><td>'+oInputs[2].value+ '</td><td>'+oInputs[3].value+ '</td><td>'+oInputs[4].value+ '</td><td></td>'+ '<td><a href="#">删除</a></td>'; // 3. 创建tr节点 var oTr = document.createElement('tr'); // 4. 把td字符添加到tr节点 oTr.innerHTML = sTd; // 5. 给删除添加事件 // oTr的第7个子节点是td,要给a标签绑定事件,需要继续获取td的子节点 oTr.children[6].children[0].onclick = function(){ deleteTr(this); } // 6. 往todies里追加一行 oTable.tBodies[0].appendChild(oTr); foo1(); //隔行变色 foo2();//高光效果 //自动计算总分 for(i=0;i<oTable.tBodies[0].rows.length;i++){ var Chinese = parseInt(oInputs[2].value); var Math = parseInt(oInputs[3].value); var Engish = parseInt(oInputs[4].value); var sum = Chinese+Math+Engish; var oTd = oTable.tBodies[0].rows[i].cells[5]; oTd.innerHTML = sum; }; }; //点击a标签,从bodies里删除一行 function deleteTr(a) { var tr = a.parentNode.parentNode; oTable.tBodies[0].removeChild(tr); }; //})() </script> </html>
相关文章推荐
- JS@DOM:向表格中动态添加行显示信息,做到滚动效果
- js动态添加表格数据使用insertRow和insertCell实现
- JS 利用节点实现对表格的动态添加删除
- 输入若干个学生成绩(每个学生四门课程)找出成绩大于90分学生姓名和学号(用函数指针实现)
- JS实现动态表格 添加行 删除行 删除列
- js实现动态添加,删除行,onkeyup表格求和
- 6.对学生成绩进行统计计算,参加考试的有6名学生,考试成绩分别为94.5,89.0,79.5,64.5,81.5,73.5,显示考试的总分和平均分,之后显示大于考试平均分的成绩信息。请写出实现上述功能
- jquary实现的动态添加表格效果
- JS实现table表格数据排序功能(可支持动态数据+分页效果)
- JS实现颜色动态淡化效果
- 第一周:项目3 学生成绩的结构体数组(包括学号、姓名、三门课成绩、总分、均分)
- 设计一个学生类,其中包含学号、姓名、成绩等数据成员,创建学生对象并且倒入到文件file.txt,然后由文件读取到另一个学生对象并输出,试编程实现。
- js实现动态添加、删除行、onkeyup表格求和示例
- JS实现下拉框的动态添加(附效果)
- 建立抽象类Student,添加属性学号,姓名,平均分,添加方法show()显示学生的个人信息(学号,姓名),添加抽象方法average()计算学生的平均成绩。建立Student的子类studentIT
- 建立一个学生结构数组来记录学生信息(学号ID,姓名和C语言成绩),要求动态建立一个结构数组,数组长度从键盘输入,自行给数组元素赋值并打印学生信息,最后不要忘记释放内存。 结构st
- JS小功能(操作Table--动态添加删除表格及数据)实现代码
- JS实现table表格数据排序(可支持动态数据+分页效果)
- js实现动态添加表格的行
- js实现表格行的动态添加