目录

  • 效果
  • 不使用数组的不完整js实现方法
  • html标签
  • js
  • css
  • 使用数组的js实现方式
  • html标签
  • js
  • css
  • 使用jQuery实现
  • html标签
  • js
  • css


效果

在左边填写信息,点击提交录入右边的表格;

序号自增(不使用数组的方法删除该行后序号有误);

点击各行的修改按钮,提取数据回显到左边的输入框中,修改后点击提交,修改后的内容显示在表格中;

点击各行的删除按钮,从表格中删除该条数据;

Android学生成绩管理系统总结 学生成绩管理系统前端_css


Android学生成绩管理系统总结 学生成绩管理系统前端_Android学生成绩管理系统总结_02


Android学生成绩管理系统总结 学生成绩管理系统前端_css_03

不使用数组的不完整js实现方法

html标签

<!-- 左边部分 -->
		<div id="left">
			<span id="title">填写信息</span>
			<form class="form" id="form" onsubmit="return false">
				<div class="form-group">
					<input id="name" type="text" placeholder="请输入姓名">
					<hr />
				</div>
				<div class="form-group">
					<input id="num" type="text" placeholder="请输入学号">
					<hr />
				</div>
				<div class="form-group">
					<input id="classes" type="text" placeholder="请输入班级">
					<hr />
				</div>
				<div class="form-group">
					<input id="course" type="text" placeholder="请输入课程名称">
					<hr />
				</div>
				<div class="form-group">
					<input id="score" type="text" placeholder="请输入课程分数">
					<hr />
				</div>
				<button id="left-btn" type="submit" onclick="add()">提交</button>
			</form>
		</div>
		<!-- 左边部分结束 -->


		<!-- 右边部分 -->
		<div id="right">
			<table id="tb-title" rules="all">
				<tr>
					<th>序号</th>
					<th>姓名</th>
					<th>学号</th>
					<th>班级</th>
					<th>课程</th>
					<th>分数</th>
					<th>操作</th>
				</tr>

				<tr>
					<td><span id="number">1</span></td>
					<td>张三</td>
					<td>631646131</td>
					<td>一年级1班</td>
					<td>数学</td>
					<td>90</td>
					<td>
						<button onclick="edit()">修改</button>
						<button onclick="del()">删除</button>
					</td>
				</tr>
			</table>
		</div>
		<!-- 右边部分结束 -->

js

<script>
			function add() {
				var name = document.getElementById("name").value;
				var num = document.getElementById("num").value;
				var classes = document.getElementById("classes").value;
				var course = document.getElementById("course").value;
				var score = document.getElementById("score").value;				
				// 检查输入
				if (name == null || name == "") {
					alert("姓名不能为空");
					return false;
				} else if (num == null || num == "") {
					alert("学号不能为空");
					return false;
				} else if (classes == null || classes == "") {
					alert("班级不能为空");
					return false;
				} else if (course == null || course == "") {
					alert("课程不能为空");
					return false;
				} else if (score == null || score == "") {
					alert("分数不能为空");
					return false;
				} else {
					//创建一行
					var tr = document.createElement("tr");
					var td1 = document.createElement("td");
					var td2 = document.createElement("td");
					var td3 = document.createElement("td");
					var td4 = document.createElement("td");
					var td5 = document.createElement("td");
					var td6 = document.createElement("td");
					var td7 = document.createElement("td");

					//获取到的值进行赋值
					td2.innerHTML = name;
					td3.innerHTML = num;
					td4.innerHTML = classes;
					td5.innerHTML = course;
					td6.innerHTML = score;

					//序号自增
					var n = document.createElement("span");
					var rows = document.getElementsByTagName("tr");
					var t = document.createTextNode(rows.length);
					n.appendChild(t);
					td1.appendChild(n);

					//操作中的两个button
					var btn = document.createElement("div");
					var btn_1 = document.createElement("button");
					var btn_2 = document.createElement("button");
					btn_1.innerHTML = "修改";
					btn_1.setAttribute('onclick', 'edit(this)');
					btn_2.innerHTML = "删除";
					btn_2.setAttribute('onclick', 'del(this)');
					btn.appendChild(btn_1);
					btn.appendChild(btn_2);
					//button组放入td7
					td7.appendChild(btn);

					//将所有td标签对放入tr中
					tr.appendChild(td1);
					tr.appendChild(td2);
					tr.appendChild(td3);
					tr.appendChild(td4);
					tr.appendChild(td5);
					tr.appendChild(td6);
					tr.appendChild(td7);
					var table = document.getElementById("tb-title");
					table.appendChild(tr);
					document.getElementById("form").reset();
				}
			}

			//修改
			function edit(obj) {
				//获取到的值显示在form表单中
				var parentTr = obj.parentNode.parentNode.parentNode;
				var td_gp = parentTr.childNodes;
				document.getElementById("name").value = td_gp[1].innerHTML;
				document.getElementById("num").value = td_gp[2].innerHTML;
				document.getElementById("classes").value = td_gp[3].innerHTML;
				document.getElementById("course").value = td_gp[4].innerHTML;
				document.getElementById("score").value = td_gp[5].innerHTML;
				//这里绑定了两次,存在一定问题但不影响运行结果,jQuery方法中进行了修改
				document.getElementById("left-btn").onclick=function(){
					//获取input框的值
					var name = document.getElementById("name").value;
					var num = document.getElementById("num").value;
					var classes = document.getElementById("classes").value;
					var course = document.getElementById("course").value;
					var score = document.getElementById("score").value;
					// 检查输入
					if (name == null || name == "") {
						alert("姓名不能为空");
						return false;
					} else if (num == null || num == "") {
						alert("学号不能为空");
						return false;
					} else if (classes == null || classes == "") {
						alert("班级不能为空");
						return false;
					} else if (course == null || course == "") {
						alert("课程不能为空");
						return false;
					} else if (score == null || score == "") {
						alert("分数不能为空");
						return false;
					} else {
						td_gp[1].innerHTML = name;
						td_gp[2].innerHTML = num;
						td_gp[3].innerHTML = classes;
						td_gp[4].innerHTML = course;
						td_gp[5].innerHTML = score;						
					}
				}
			}


			//删除
			function del(obj) {
				var parentTr = obj.parentNode.parentNode.parentNode;
				document.getElementById("tb-title").removeChild(parentTr);
			}
		</script>

css

#left{
	width: 300px;
}
#title{
	position: absolute;
	left: 120px;
	top: 70px;
	width: 100px;
	height: 30px;
	font-size: 20px;
	text-align: center;
}
#left form{
	width: 250px;
	position: absolute;
	left: 50px;
	top: 120px;

}
#left-btn{
	position: absolute;
	top: 265px;	
	width: 250px;
	height: 30px;
	background: rgba(45, 153, 254, 1);
	opacity: 1;
	border: 1px solid rgba(45, 153, 254, 1);
	border-radius: 2px;
	font-size: 12px;
	font-family: Microsoft YaHei;
	font-weight: 400;
	line-height: 22px;
	color: rgba(255, 255, 255, 1);
	
}
.form-group{
	width: 250px;
	height: 50px;
}
.form-group span{
	margin-left: 20px;
}
input {
	width: 90%;	
	color: #000000;
	font-weight: 100;
	border: none;
	background: none;
	outline: none;
	padding: 5px;
	font-size: 13px;
}
hr{
	width: 250px;
}




#right{
	position: absolute;
	left: 360px;	
	
}
#tb-title{
	width: 900px;
	position: absolute;
	top: 60px;
	text-align: center;
	border: 1px solid rgba(45, 153, 254, 1);
	
}
input:-webkit-autofill {
	box-shadow: 0 0 0px 1000px white inset !important;
}

使用数组的js实现方式

html标签

<!-- 左边部分 -->
		<div id="left">
			<span id="title">填写信息</span>
			<form class="form" id="form" onsubmit="return false">
				<input id="id" type="hidden" />
				<div class="form-group">
					<input id="name" type="text" placeholder="请输入姓名">
					<hr />
				</div>
				<div class="form-group">
					<input id="num" type="text" placeholder="请输入学号">
					<hr />
				</div>
				<div class="form-group">
					<input id="classes" type="text" placeholder="请输入班级">
					<hr />
				</div>
				<div class="form-group">
					<input id="course" type="text" placeholder="请输入课程名称">
					<hr />
				</div>
				<div class="form-group">
					<input id="score" type="text" placeholder="请输入课程分数">
					<hr />
				</div>
				<button id="left-btn" type="submit" onclick="add()">提交</button>
			</form>
		</div>
		<!-- 左边部分结束 -->


		<!-- 右边部分 -->
		<div id="right">
			<table id="tb-title" rules="all">
				<thead>
					<tr>
						<th>序号</th>
						<th>姓名</th>
						<th>学号</th>
						<th>班级</th>
						<th>课程</th>
						<th>分数</th>
						<th>操作</th>
					</tr>
				</thead>

				<tbody id="tbody">
				</tbody>
			</table>
		</div>
		<!-- 右边部分结束 -->

js

<script>
			//创建数组
			var arr = [];
			//tbody内容
			function val(){
				var tbodyHtmlStr = '';
				for(var i = 0; i < arr.length; i++) {
					tbodyHtmlStr += '<tr>';
					tbodyHtmlStr += '<td>'+(i+1)+'</td>';
					tbodyHtmlStr += '<td>'+arr[i].name+'</td>';
					tbodyHtmlStr += '<td>'+arr[i].num+'</td>';
					tbodyHtmlStr += '<td>'+arr[i].classes+'</td>';
					tbodyHtmlStr += '<td>'+arr[i].course+'</td>';
					tbodyHtmlStr += '<td>'+arr[i].score+'</td>';
					tbodyHtmlStr += '<td>';
					tbodyHtmlStr += '<button onclick="edit(this,' + i + ')">修改</button>';
					tbodyHtmlStr += '<button onclick="del(this,' + i + ')">删除</button>';
					tbodyHtmlStr += '</td>';
					tbodyHtmlStr += '</tr>';					
				}return tbodyHtmlStr;
			} 
		
			function add() {
				var id = document.getElementById("id").value;
				var name = document.getElementById("name").value;
				var num = document.getElementById("num").value;
				var classes = document.getElementById("classes").value;
				var course = document.getElementById("course").value;
				var score = document.getElementById("score").value;
				//检查输入
				if (name == null || name == "") {
					alert("姓名不能为空");
					return false;
				} else if (num == null || num == "") {
					alert("学号不能为空");
					return false;
				} else if (classes == null || classes == "") {
					alert("班级不能为空");
					return false;
				} else if (course == null || course == "") {
					alert("课程不能为空");
					return false;
				} else if (score == null || score == "") {
					alert("分数不能为空");
					return false;
				} else {
					if(id == '' || id == undefined) {
						arr.push({
							name: name,
							num: num,
							classes: classes,
							course: course,
							score: score,
						});
					} else {
						arr[id] = {
							name: name,
							num: num,
							classes: classes,
							course: course,
							score: score,
						};
					}
					
					document.getElementById("tbody").innerHTML = val();
					document.getElementById("form").reset();	
				}			
			}


			//删除
			function del(obj,i){
				arr.splice(i,1);
				document.getElementById("tbody").innerHTML = val();
			}


			//修改
			function edit(obj,i){
				//获取到的值显示在form表单中
				document.getElementById("id").value = i;
				document.getElementById("name").value = arr[i].name;
				document.getElementById("num").value = arr[i].num;
				document.getElementById("classes").value = arr[i].classes;
				document.getElementById("course").value = arr[i].course;
				document.getElementById("score").value = arr[i].score;
			}
						
		</script>

css

同上

使用jQuery实现

html标签

与之前的方法相比,只删除了提交按钮的绑定事件

<!-- 左边部分 -->
		<div id="left">
			<span id="title">填写信息</span>
			<form class="form" id="form" onsubmit="return false">
				<input id="id" type="hidden" />
				<div class="form-group">
					<input id="name" type="text" placeholder="请输入姓名">
					<hr />
				</div>
				<div class="form-group">
					<input id="num" type="text" placeholder="请输入学号">
					<hr />
				</div>
				<div class="form-group">
					<input id="classes" type="text" placeholder="请输入班级">
					<hr />
				</div>
				<div class="form-group">
					<input id="course" type="text" placeholder="请输入课程名称">
					<hr />
				</div>
				<div class="form-group">
					<input id="score" type="text" placeholder="请输入课程分数">
					<hr />
				</div>
				<button id="left-btn" type="submit">提交</button>
			</form>
		</div>
		<!-- 左边部分结束 -->

		<!-- 右边部分 -->
		<div id="right">
			<table id="tb-title" rules="all">
				<thead>
					<tr>
						<th>序号</th>
						<th>姓名</th>
						<th>学号</th>
						<th>班级</th>
						<th>课程</th>
						<th>分数</th>
						<th>操作</th>
					</tr>
				</thead>

				<tbody id="tbody">

				</tbody>
			</table>
		</div>
		<!-- 右边部分结束 -->

js

<script src="js/jquery-3.4.1.min.js"></script>
		<script>
			//创建数组
			var arr = [];

			function val() {
				var tbodyHtmlStr = '';
				for (var i = 0; i < arr.length; i++) {
					tbodyHtmlStr += '<tr>';
					tbodyHtmlStr += '<td>' + (i + 1) + '</td>';
					tbodyHtmlStr += '<td>' + arr[i].name + '</td>';
					tbodyHtmlStr += '<td>' + arr[i].num + '</td>';
					tbodyHtmlStr += '<td>' + arr[i].classes + '</td>';
					tbodyHtmlStr += '<td>' + arr[i].course + '</td>';
					tbodyHtmlStr += '<td>' + arr[i].score + '</td>';
					tbodyHtmlStr += '<td>';
					tbodyHtmlStr += '<button onclick="edit(this,' + i + ')">修改</button>';
					tbodyHtmlStr += '<button onclick="del(this,' + i + ')">删除</button>';
					tbodyHtmlStr += '</td>';
					tbodyHtmlStr += '</tr>';
				}
				return tbodyHtmlStr;
			}

			$("#left-btn").click(function() {
				var id = $("#id").val();
				var name = $("#name").val();
				var num = $("#num").val();
				var classes = $("#classes").val();
				var course = $("#course").val();
				var score = $("#score").val();
				//检查输入
				if (name == null || name == "") {
					alert("姓名不能为空");
					return false;
				} else if (num == null || num == "") {
					alert("学号不能为空");
					return false;
				} else if (classes == null || classes == "") {
					alert("班级不能为空");
					return false;
				} else if (course == null || course == "") {
					alert("课程不能为空");
					return false;
				} else if (score == null || score == "") {
					alert("分数不能为空");
					return false;
				} else {
					if (id == '' || id == undefined) {
						arr.push({
							name: name,
							num: num,
							classes: classes,
							course: course,
							score: score,
						});
					} else {
						arr[id] = {
							name: name,
							num: num,
							classes: classes,
							course: course,
							score: score,
						};
					}
					$("#tbody").html(val());
					$("#form")[0].reset();
				}
			});

			//删除
			function del(obj, i) {
				arr.splice(i, 1);
				$("#tbody").html(val());
			}

			//修改
			function edit(obj, i) {
				//获取到的值显示在form表单中
				$("#id").val(i);
				$("#name").val(arr[i].name);
				$("#num").val(arr[i].num);
				$("#classes").val(arr[i].classes);
				$("#course").val(arr[i].course);
				$("#score").val(arr[i].score);
			}
		</script>

css

同上