IFE2017-单个表单项的检验
来源:互联网 发布:巴黎散步道 知乎 编辑:程序博客网 时间:2024/05/29 11:05
百度IFE单个表单项检验
任务一:表单(一)单个表单项的检验
任务描述
- 字符数为4~16位
- 每个英文字母、数字、英文符号长度为1
- 每个汉字,中文符号长度为2
想法
- 取输入框内文本,转为字符编码值;
- 循环判断每个字符其是否在英文字母、数字、英文符号的编码范围内,如果在strLen加1;
- 如果不是,那判断其是否在32bit的汉字字符编码值范围内,strLen加2;
- 如果不是,判断格式错误
- 得到strLen后,判断字符数是否在4~16位
代码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>任务一:表单(一)单个表单项的检验</title> <style type="text/css"> .f-verify{ font-size: 12px; } .f-verify input { width: 400px; height: 30px; direction: none; border:1px solid #CCCCCC; border-radius: 5px; } .f-verify button{ width: 50px; height: 30px; margin-left: 15px; background-color: #436EB4; border: 1px solid transparent; border-radius: 5px; color: white; line-height: 30px; } .f-verify p{ color: #CCCCCC; } </style></head><body> <div class="f-verify"> <form action="#"> <span>名称:</span><input id="iTxt" type="text" placeholder="字符数为4~16位"><button id="btn">验证</button><br> <p id="pTip">必填,长度为4~16个字符</p> </form> </div></body> <script type="text/javascript"> var btn = document.getElementById("btn"); var iTxt = document.getElementById("iTxt"); var pTip= document.getElementById("pTip"); btn.onclick = function(){ var str = iTxt.value; var strLen = getStrLen(str); console.log(strLen); if (strLen < 4 || strLen > 16) { tips(pTip,2); }else{ tips(pTip,1); } }; var getStrLen = function(str){ var len = 0; for (var i = str.length - 1; i >= 0; i--) { if (str.charCodeAt(i) < 0xFF && str.charCodeAt(i) > 0x00) { len++; console.log(str.charCodeAt(i)); } else if (str.charCodeAt(i) < 0x9FBF && str.charCodeAt(i) > 0x4E00) { len += 2; console.log(str.charCodeAt(i)); } else{ tips(pTip,3); } } return len; } var tips = function(obj,situation){ switch(situation){ case 1: pTip.textContent = "格式正确"; pTip.style.color = "green"; iTxt.style.border = "1px solid green"; break; case 2: pTip.textContent = "必须填入长度4-16的字符"; pTip.style.color = "red"; iTxt.style.border = "1px solid red"; break; case 3: pTip.textContent = "每个汉字,中文符号长度为2"; pTip.style.color = "red"; iTxt.style.border = "1px solid red"; } } </script></html>
问题
- UTF-16 32bit的编码字符范围究竟是什么?代码是使用了中文字符的编码字符值范围
总结
其实今天更多学习到的是UTF-16的知识,对UTF-16有了个粗略的了解。
0 0
- IFE2017-单个表单项的检验
- 【ife】任务二十九:表单(一)单个表单项的检验
- 表单检验的超级方便的方法
- gxh7506的压箱宝!JS表单检验系列
- 表单包裹的单个文本框,回车键自动提交表单
- 表单检验解决办法v1
- JavaScript -- 正则表达式 检验表单提交的内容
- R语言中的T检验-单个总体T检验
- ASP接收单个表单的多个提交按钮
- js提交表单的单个验证与整体验证
- jquery.validate验证单个表单元素的方法
- 制作网页中的表单并在提交时对输入的内容进行检验
- 【jQuery】无须id、name与class等属性,直接对表单中的所有表单项进行遍历、判断、检验
- WSS页面定制系列(2)---定制单个列表的表单页面
- WSS页面定制系列(2)---定制单个列表的表单页面
- WSS页面定制系列(2)---定制单个列表的表单页面
- 25个带单个输入框和提交按钮的表单设计案例
- 跟我一起学extjs5(34--单个模块的设计[2建立表单表bean])
- leetcode 2 Add Two Numbers golang
- c++——双向循环链表常见操作
- Android studio 调试NDK C++ 代码,遇到的问题
- (13)关卡编辑器之大纲视图
- poj 2104 主席树
- IFE2017-单个表单项的检验
- 第五天 : 启动线程和运行线程中方法的区别
- io流的概述及字节流相关类的基本使用和异常处理
- CentOS虚拟机下挂载镜像
- redis操作
- Sublime Text 3前端开发常用优秀插件介绍
- 用VUE和Bootstrap搭建留言板
- P1140 铺砖块
- Linux基础:网络管理