涉及技术点

【form表单数据获取】

【正则表达式验证】·【通用验证方式】

【dom操作】

【checkbox复选框_全选/全不选】

【添加list值并刷新dom】

【删除list值并刷新dom】

演示demo

登录页:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>登录页</title></head><body><form action="index.html" onsubmit="return chick(this)"><p>账号:<input type="text" name="userName" placeholder="请输入账号" required></p><p>密码:<input type="password" name="passWord" placeholder="请输入密码" required></p><p><input type="submit" value="提交"></p></form><script type="text/javascript" src="https://code.jquery.com/jquery-3.4.0.min.js"></script><script src="js/index.js"></script><script>function chick(o) {var userName = o["userName"].value;var passWord = o["passWord"].value;list.forEach(e => {if (e["userName"] == userName && e["passWord"] == passWord) {alert(e["userName"] + "登录成功.");location.href = "index.html";return true;}});return false;}</script>
</body></html>

主页【index.html】:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>table {border-collapse: collapse;width: 100%;text-align: center;}</style>
</head><body><p>编号:<input type="number" id="id" placeholder="请输入编号" required/></p><p>账号:<input type="text" id="userName" placeholder="请输入账号" required/></p><p>密码:<input type="password" id="passWord" placeholder="请输入密码" required/></p><p>年龄:<input type="number" id="age" placeholder="请输入年龄" required/></p><p>性别:<select id="sex" required><option value="男">男</option><option value="女">女</option></select></p><p>简介:<input type="text" id="introduce" placeholder="请输入简介" required/></p><p><input type="button" onclick="AddUser()" value="提交"></p><hr/><div id="tab"></div><script type="text/javascript" src="https://code.jquery.com/jquery-3.4.0.min.js"></script><script src="js/index.js"></script>
</body></html>

【index.js】编码:

var list = [{ "id": 1, "userName": "admin", "passWord": "123456", "age": 18, sex: "男", "introduce": "管理员" },{ "id": 2, "userName": "zhangsan", "passWord": "123456", "age": 21, sex: "男", "introduce": "张三" },{ "id": 3, "userName": "lisi", "passWord": "123456", "age": 16, sex: "女", "introduce": "李四" }
];
init();function init() {$("#tab").html("");var tab = "<table border='1'>";tab += "<tr><th><button onclick='chooseAll(this)'>全选</button></th><th>编号</th><th>账号</th><th>密码</th><th>年龄</th><th>性别</th><th>简介</th><th>操作</th><tr>";list.forEach(e => {tab += "<tr>";tab += "<td><input type='checkbox' class='choose' value=" + e["id"] + "></td>";tab += "<td>" + e["id"] + "</td>";tab += "<td>" + e["userName"] + "</td>";tab += "<td>" + e["passWord"] + "</td>";tab += "<td>" + e["age"] + "</td>";tab += "<td>" + e["sex"] + "</td>";tab += "<td>" + e["introduce"] + "</td>";tab += "<td><button onclick='delId(" + e["id"] + ")'>删除</button></td>";tab += "</tr>";});tab += "</table>";tab += "<button onclick='delAll()'>批量删除</button>";$("#tab").append(tab);
}function delAll() {if (!confirm("是否删除所选行?")) {return;}var choose = $(".choose");for (let i = 0; i < choose.length; i++) {if (choose[i].checked == true) {for (let j = 0; j < list.length; j++) {if (list[j]["id"] == choose[i].value) {console.log(list[j]["id"]);list.splice(j, 1);break;}}}}init();
}function chooseAll(o) {var choose = $(".choose");if ($(o).text() == "全选") {$(o).text("全不选");for (let i = 0; i < choose.length; i++) {$(choose[i]).attr("checked", "true");}} else {$(o).text("全选");for (let i = 0; i < choose.length; i++) {$(choose[i]).removeAttr("checked");}}}function updateSex() {init($("#sex").val());
}function AddUser() {var id = $("#id").val();var userName = $("#userName").val();var passWord = $("#passWord").val();var age = $("#age").val();var sex = $("#sex").val();var introduce = $("#introduce").val();var patrn = /^(\w){6,20}$/;if (!patrn.exec(passWord)) {alert("密码6-20位");return false;}list.push({"id": id,"userName": userName,"passWord": passWord,"age": age,"sex": sex,"introduce": introduce});init();return false;
}function delId(o) {if (!confirm("是否删除此行?")) {return;}for (let i = 0; i < list.length; i++) {if (list[i]["id"] == o) {list.splice(i, 1);break;}}init();
}

js_jQuery综合机试练习题相关推荐

  1. [华为机试练习题]55.最大公约数 amp; 多个数的最大公约数

    题目 描写叙述: 输入2个数字,最后输出2个数字的最大公约数 题目类别: 位运算 难度: 0基础 执行时间限制: 无限制 内存限制: 无限制 阶段: 入职前练习 输入: 2个整数 输出: 输出数字1和 ...

  2. [华为机试练习题]60.水仙花数

    题目 描述: 水仙花数又称阿姆斯特朗数. 水仙花数是指一个n 位数( n≥3 ),它的每个位上的数字的n 次幂之和等于它本身.(例如:1^3 + 5^3 + 3^3 = 153) 求输入的数字是否为水 ...

  3. [华为机试练习题]51.数列求和

    题目 描写叙述: 题目描写叙述 编敲代码,输入一个正整数n.求下列算式的值.要求定义和调用函数fact(k)计算k的阶乘. 1+1/2!+ .... +1/n! 计算结果保存在double类型变量中. ...

  4. [华为机试练习题]37.合唱队

    题目 描述: 计算最少出列多少位同学,使得剩下的同学排成合唱队形说明:N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形. 合唱队形是指这样的一种队形:设K位同学 ...

  5. (记录)华为机试练习题13—句子逆序

    华为机试练习题13-句子逆序 题目描述 输入描述: 输出描述 例如: 代码(Java) 题目描述 将一个英文语句以单词为单位逆序排放.例如"I am a boy",逆序排放后为&q ...

  6. [华为机试练习题]44.24点游戏算法

    题目 注意: 6 + 2 * 4 + 10 = 24 不是一个数字一个数字的计算 代码 /*--------------------------------------- * 日期:2015-07-0 ...

  7. Java-Web机试练习题一、后台管理系统——管理员管理模块

    题目:后台管理系统--管理员管理模块 一. 语言和环境 1. 实现语言:JAVA 语言. 2. 环境要求:MyEclipse/Eclipse + Tomcat + MySql. 3. 使用技术:Jsp ...

  8. [华为机试练习题]5.IP地址推断有效性

    题目 推断输入的字符串是不是一个有效的IP地址 具体描写叙述: 请实现例如以下接口 boolisIPAddressValid(constchar* pszIPAddr) 输入:pszIPAddr 字符 ...

  9. 华为2018年机试练习题[java版]

    package PractiseTest; import java.util.*; public class demo1 {/*** 有这样一道智力题:"某商店规定:三个空汽水瓶可以换一瓶汽 ...

最新文章

  1. 从Google Scholar看各大科技公司的科研水平
  2. 2016年大学计算机期末试题及答案,2016年大学计算机基础试题题库及答案
  3. mysql数据库财务_MySQL数据库——从入门到删库跑路(二)
  4. 服务器放n个网站,服务器放n个网站
  5. 命令注入_命令注入绕过方式总结
  6. 分块编码(Transfer-Encoding: chunked)VS Content-length
  7. 3-3 修改haproxy配置文件
  8. [iOS] 使用 blockable NSTimer 避免内存泄漏
  9. jsp的mysql数据库分页查询_Jsp如何实现分页功能(使用MySQL数据库)
  10. 雨棚板弹性法计算简图_钢结构雨篷图纸计算书
  11. PMP考试有哪些技巧?
  12. highchart图表 | 加基准线
  13. msfconsole连接mysql数据库_kali2.0 msfconsole连接postgresql及启动armitage
  14. Matlab产生由正弦波产生方波
  15. android隐藏其他应用图标,【Android】隐藏app图标以及隐式启动其他APP
  16. 非常不错的IOS学习网站
  17. 2020届校招浦发银行 信息科技 创新岗 面经及历年汇总~
  18. 少年派的计算机游戏怎么弄,少年派的无聊之旅攻略大全图文详解
  19. Elsevier系统LaTex编译不成功,无法生成PDF的解决方案
  20. C#访问大华网络摄像头

热门文章

  1. cba比赛比分预测_CBA榜首大战新疆笑到最后 周琦18+15但救赎之路依旧漫长
  2. 求排序一堆整数,数据都是有限范围的和有限个数的,对他们进行排序,要求O(n)的时间复杂度....
  3. 牛客练习赛38 E 出题人的数组 2018ccpc桂林A题 贪心
  4. Arria10_emif
  5. Linux下各文件夹的含义和用途
  6. PHP基于单例模式编写PDO类的方法
  7. Hadoop -- ES -- CURD
  8. QT 5 安装 vs2017 后,出现找不到 rc.exe 问题
  9. 02:输出最高分数的学生姓名
  10. xml 转map dom4j