一道DOM操作题

摘要:
创建一个包含姓名、性别、年龄和班级标题的表。1.单击单元格中的内容并在弹出窗口中输入值,以修改单元格中的原始数据;2.设置粗体和红色按钮,修改单元格内容后显示按钮,并更改修改内容的样式;3.设置“添加”按钮,单击“添加新的单元格行”(4);代码如下:1<!doctypehtml>2<html>3<头部>4<元字符集=“utf-8”>5和1

创建一个表格,表头为姓名,性别,年龄,班级

1. 点击单元格内的内容,弹窗输入值,修改单元格内原有数据;

2. 设置加粗,标红按钮,在修改完单元格内容后显示按钮并能够对修改的内容进行样式改变;

3. 设置添加按钮,点击添加一行新的单元格(4个);

代码如下:

 1 <!doctype html>
 2 <html>
 3 <head>
 4 <meta charset="utf-8">
 5 <title>无标题文档</title>
 6 <style>//首先在head标签中设置了表格样式,以及两个按钮的隐藏
 7     td{
 8         height: 50px;
 9         text-align: center;
10     }    
11     table{
12         margin: auto;
13          80%;
14     }
15     .button{
16         visibility: hidden;
17     }
18 </style>
19 </head>
20 
21 <body>
22 <script>
23     var td_obj;//一个全局变量
24 //第一个函数设置为点击弹窗修改内容,但其中包含了几条作用于其他函数的设置,多个函数之间相互都有关联
25     function one(obj){
26         td_obj = obj;//此行为加粗标红按钮设置,使这两个按钮只对当前修改的单元格内容起效
27         obj.innerHTML = prompt("");//弹窗
28         //obj.setAttribute("abc","q"); //给所有td标签一个自定义属性,为了实现标红加粗两个按钮的功能而设置,是另一种方法,下文中被注释掉的代码
29         document.getElementById("bold").style.visibility = "visible";//点击修改后显示两个按钮
30         document.getElementById("red").style.visibility = "visible";
31 
32     }
33 //第二个函数设置为添加单元格
34     function two(){
35         var a = document.getElementById("table");//获取表格元素
36         var b = document.createElement("tr");//获取行元素
37         //4个单元格利用for循环循环添加,使一行中有4个单元格
38         for(i=0;i<4;i++){
39             var c = document.createElement("td");//创建单元格
40             c.setAttribute("onClick","one(this)")//赋予单元格onClick属性以及调用的函数
41             b.appendChild(c);//将创建的单元格追加至行            
42         }
43         a.appendChild(b);//将循环完成的行添加至表格
44     }
45     //第三个函数设置加粗标红按钮的样式
46     function three(obj){
47         td_obj.style.fontWeight = "bold";//全局变量作用于此行
48         obj.style.visibility = "visible";//完成加粗后按钮消失
49 //下面被注释掉的代码是另一种方法,比较麻烦,上面的是老师带着他的高级装备打怪的战利品 - -!
50 //        var a =   document.getElementsByTagName("td"); //get到所有td中的内容
51 //        for(i=0;i<a.length;i++){                       //利用for循环查找所有包含自定义属性abc的td标签
52 //            var aa = a[i].getAttribute("abc");
53 //            if(aa == "q"){                             //如果这个变量的值 == 自定义属性abc的值q,则执行加粗变化
54 //                a[i].style.fontWeight = "bold";
55 //                a[i].removeAttribute("abc");      //为了使加粗不会将所有的td内容改变,删除已被修改内容的td标签的自定义属性abc,使abc属性始终唯一的存在与一个td标签中          
56 //            }
57 //        }    
58     }
59     function four(obj){
60             td_obj.style.color = "red";
61 //        //obj.style.visibility = "visible";
62 //        var a = document.getElementsByTagName("td");
63 //        for(i=0;i<a.length;i++){
64 //            var aa = a[i].getAttribute("abc");
65 //            if(aa == "q"){
66 //                a[i].style.color = "red";
67 //                a[i].removeAttribute("abc");
68 //            }
69 //        }
70     }
71 </script>
72 <button onClick="two()">添加</button>
73 <button     onClick="three(this)">加粗</button>
74 <button     onClick="four(this)">标红</button>
75 <table   border="1" cellspacing="0">
76     <tr>
77         <td>姓名</td>
78         <td>性别</td>
79         <td>年龄</td>    
80         <td>班级</td>
81     </tr>
82     <tr>
83         <td onClick="one(this)">张三</td>
84         <td onClick="one(this)">男</td>
85         <td onClick="one(this)">15</td>    
86         <td onClick="one(this)">101</td>
87     </tr>
88 </table>
89 </body>
90 </html>            

总结:1、3两个题目是自己想出来的,写的也挺冗余,但是思路还算清晰,没有费时太久,第2个题目是一点想法都没有,在老师指导下,获取所有td中的值传给两个按钮并实现了题目要求

免责声明:文章转载自《一道DOM操作题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【转】 一个后端开发的 Vue 笔记【入门级】初识Fastjson漏洞(环境搭建及漏洞复现)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

强大的日期控件(my 97)

忘了给大家介绍这款强大的日期类了,自己用了很长时间了,感觉确实不错,不仅功能强大,而且使用方便 图片: 大家可以到官网去下载http://www.my97.net/ 上面也有详细的使用方法; 下面我也来介绍一种使用方法:先将MY 97控件下载下来,然后DatePicker包放到WebRoot目录下,然后在要使用到的 页面引入包内的一个js文件即可(src...

JQuery对数组的一些操作总结

JQuery对数组的处理非常便捷并且功能强大齐全,一步到位的封装了很多原生js数组不能企及的功能。下面来看看JQuery数组的强大之处在哪。 1.$.each(array, [callback]) 遍历 不同于例遍 jQuery 对象的 $.each() 方法,此方法可用于例遍任何对象(不仅仅是数组哦~). 回调函数拥有两个参数:第一个为对象的成员或数组的...

各种VBA excel 命令、属性、方法

本示例为设置密码窗口 (1)If Application.InputBox("请输入密码:") = 1234 Then        [A1] = 1 '密码正确时执行Else      MsgBox "密码错误,即将退出!" '此行与第2行共同设置密码End If'本示例为设置密码窗口 (1)X = MsgBox("是否真的要结帐?", vbYesNo)...

NPOI随笔——图片在单元格等比缩放且居中显示

  NPOI导出的图片默认是在单元格左上方,这使得图片在单元格显示得很难看。居中,且等比缩放,才是图片在单元格上的完美展示。         /// <summary> /// 图片在单元格等比缩放居中显示 /// </summary> /// <param na...

04-表格 table(会使用)

第01阶段.前端基础.表格 HTML 第二天目标 能够利用表格、列表和表单完成注册页面的综合案例 能出说表格用来做什么的 能说出列表用来做什么的 能说出表单用来做什么的 为了让我们页面显示的更加整齐,我们需要学习三个表(表格、表单、列表) 表格 table(会使用) 目标: 理解: 能说出表格用来做什么的 表格的基本结构组成 应用: 能够熟练...

导出Excel之Epplus使用教程2(样式设置)

 导出Excel之Epplus使用教程1(基本介绍)  导出Excel之Epplus使用教程2(样式设置)   导出Excel之Epplus使用教程3(图表设置)    导出Excel之Epplus使用教程4(其他设置) 1、公式计算      excel中离不开各种各样的公式计算,在Epplus中运用公式有两种方式,你都可以尝试一下: 1 2...