Topic 1 : 检测用户的输入 :
题目要求:
编写一个用户注册页面
检测用户名是否是6位以下,密码是否是8位以上,如果不满足要求高亮显示文本框 ;
代码如下 :
<!doctype html> <html> <head> <meta charset="utf-8"> <title>用户注册页面</title> <style> .bg {background-color: red; } </style> </head> <body> <!-----id适用于js中的---> <input type="text" name="name" id="name" /><br> <input type="text" name="pwd" id="pwd" /><br> <input type="submit" value="注册" id="submit" /> <script> // 编写一个用户注册页面 // 检测用户名是否是6位以下,密码是否是8位以上,如果不满足要求高亮显示文本框 ; var nameText = document.getElementById('name'); var pwdText = document.getElementById('pwd'); var submit = document.getElementById('submit'); //给submit按钮注册事件 submit.onclick = function () { if(nameText.value.length < 6 && nameText.value.length > 0) { nameText.className = ''; } else { nameText.className = 'bg'; } if(pwdText.value.length > 8 && pwdText.value.length < 16) { pwdText.className = ''; } else { pwdText.className = 'bg'; } //取消submit的默认行为的执行 if里面不需要这句了 如果加了肯能会影响后续代码的执行 return false; } </script> </body> </html>
Topic 2 : 文本框默认样式的设置 :
这一句可以设置文本框的默认值;
效果为 :
<!doctype html> <html> <head> <meta charset="utf-8"> <title>设置文本框中的默认样式</title> <style> .bg {color: gray; } </style> </head> <body> <input type="text" id="textSearch" class="bg" value="请输入关键字" > <input type="button" value="搜索"> <script> //注册事件 //如果文本框获得焦点 当内容是请输入关键字 清空内容 文字颜色恢复默认的黑色 var textSearch = document.getElementById('textSearch'); textSearch.onfocus = function () { if(textSearch.value === '请输入关键字') { this.value = ''; //把this的属性恢复为默认值 这里作用是把文字颜色变为黑色 this.className = ''; } } // 当失去焦点的时候onblur。如果文本框中的内容为空 设置文本框中内容为 请输入关键字 设置字体颜色为gray textSearch.onblur = function () { // if (textSearch.value === '') {} // 这一句不太好的 这个要是用户第一个输入的是空格的话那么就会误判 我们可以用它的长度来判断 if (textSearch.value.length === 0) { this.className = 'bg'; this.value = '请输入关键字'; } } </script> </body> </html>
Topic 3 : :设计一个表格的样式实现全选反选的功能
要实现的功能:
1 点击全选按钮(父的checkbox)的时候,让子的checkbox的选中状态跟父的checkbox保持一致
2 给所有的子的checkbox注册点击事件,点击子的checkbox 如果有一个子的checkbox没有选中,父的checkbox也不选中
3 反选
代码示例:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>全选反选</title> <style> * { padding: 0; margin: 0; } .wrap { width: 300px; margin: 100px auto 0; } table { border-collapse: collapse; border-spacing: 0; border: 1px solid #c0c0c0; width: 300px; } th, td { border: 1px solid #d0d0d0; color: #404060; padding: 10px; } th { background-color: #09c; font: bold 16px "微软雅黑"; color: #fff; } td { font: 14px "微软雅黑"; } tbody tr { background-color: #f0f0f0; } tbody tr:hover { cursor: pointer; background-color: #fafafa; } </style> </head> <body> <p class="wrap"> <table> <thead> <tr> <th> <input type="checkbox" id="father" /> </th> <th>商品</th> <th>价钱</th> </tr> </thead> <tbody id="son"> <tr> <td> <input type="checkbox" /> </td> <td>iPhone8</td> <td>8000</td> </tr> <tr> <td> <input type="checkbox" /> </td> <td>iPad Pro</td> <td>5000</td> </tr> <tr> <td> <input type="checkbox" /> </td> <td>iPad Air</td> <td>2000</td> </tr> <tr> <td> <input type="checkbox" /> </td> <td>Apple Watch</td> <td>2000</td> </tr> </tbody> </table> <input type="button" value=" 反 选 " id="btn"> <script> // 1 点击全选按钮(父的checkbox)的时候,让子的checkbox的选中状态跟父的checkbox保持一致 //1.1 给父级的check注册事件 //获取父级checkbox var father = document.getElementById('father'); //获取所有的子级checkbox //注意这一句用选择器的获得元素的写法 var sons = document.querySelectorAll('#son input[type=checkbox]'); var len = sons.length; father.onclick = function () { //1.2遍历这个容器中的所有元素 让所有的子级checkbox的状态都等于父级的状态 for(var i = 0;i < len; i++) { //注意这一句话是核心 让子级的checkbox的状态等于父级 sons[i].checked = this.checked; } } // 2 给所有的子的checkbox注册点击事件,点击子的checkbox 如果有一个子的checkbox没有选中,父的checkbox也不选中 // 2.1 给所有的子的checkbox注册点击事件 // 核心代码封装成方法 便于使用 function step2 () { //2.2 只要子级有一个是false那么父级也就是false //2.2 定义一个变量用于父级的状态 这个fatherIsTrue必须在点击事件这里面 father的赋值也是 因为每个点击事件需要判断所有的子级的状态 在外面的话是实现不了的 var fatherIsTrue = true; for (var j = 0; j < len; j++) { if (!sons[j].checked) { fatherIsTrue = false; break; } } father.checked = fatherIsTrue; } for(var i = 0;i < len; i++) { sons[i].onclick = function () { step2(); } } //3 反选 // 给反选按钮注册一个事件 var btn = document.getElementById('btn'); btn.onclick = function () { for(var i = 0; i < len; i++) { sons[i].checked = !sons[i].checked; } //写到这里我门会有一个问题就是反选不能控制父级 但是呢我们的第二步已经完成这个问题了 所以我们把第二步 //的核心代码分装成一个方法 直接调用即可 直接粘贴复制过来不太好 step2(); } </script> </p> </body> </html>
网页示例:
注意 :这一句话是核心 让子级的checkbox的状态等于父级
sons[i].checked = this.checked;
相关推荐:
以上是【js】:检测用户输入、文本框默认样式设置、设计表格样式实现全选反选的详细内容。更多信息请关注PHP中文网其他相关文章!

JavaScript字符串替换方法详解及常见问题解答 本文将探讨两种在JavaScript中替换字符串字符的方法:在JavaScript代码内部替换和在网页HTML内部替换。 在JavaScript代码内部替换字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 该方法仅替换第一个匹配项。要替换所有匹配项,需使用正则表达式并添加全局标志g: str = str.replace(/fi

因此,在这里,您准备好了解所有称为Ajax的东西。但是,到底是什么? AJAX一词是指用于创建动态,交互式Web内容的一系列宽松的技术。 Ajax一词,最初由Jesse J创造

本文讨论了在浏览器中优化JavaScript性能的策略,重点是减少执行时间并最大程度地减少对页面负载速度的影响。

本文讨论了使用浏览器开发人员工具的有效JavaScript调试,专注于设置断点,使用控制台和分析性能。

将矩阵电影特效带入你的网页!这是一个基于著名电影《黑客帝国》的酷炫jQuery插件。该插件模拟了电影中经典的绿色字符特效,只需选择一张图片,插件就会将其转换为充满数字字符的矩阵风格画面。快来试试吧,非常有趣! 工作原理 插件将图片加载到画布上,读取像素和颜色值: data = ctx.getImageData(x, y, settings.grainSize, settings.grainSize).data 插件巧妙地读取图片的矩形区域,并利用jQuery计算每个区域的平均颜色。然后,使用

本文将引导您使用jQuery库创建一个简单的图片轮播。我们将使用bxSlider库,它基于jQuery构建,并提供许多配置选项来设置轮播。 如今,图片轮播已成为网站必备功能——一图胜千言! 决定使用图片轮播后,下一个问题是如何创建它。首先,您需要收集高质量、高分辨率的图片。 接下来,您需要使用HTML和一些JavaScript代码来创建图片轮播。网络上有很多库可以帮助您以不同的方式创建轮播。我们将使用开源的bxSlider库。 bxSlider库支持响应式设计,因此使用此库构建的轮播可以适应任何

数据集对于构建API模型和各种业务流程至关重要。这就是为什么导入和导出CSV是经常需要的功能。在本教程中,您将学习如何在Angular中下载和导入CSV文件


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

WebStorm Mac版
好用的JavaScript开发工具

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

Atom编辑器mac版下载
最流行的的开源编辑器