Javascript_16_DOM_form练习
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GBK"> <title>DOM_form练习</title> </head> <body> 正则表达式对象 本对象包含正则表达式模式以及表明如何应用模式的标志。 语法 1 re = /pattern/[flags] 语法 2 re = new RegExp("pattern",["flags"]) 参数 re 必选项。将要赋值为正则表达式模式的变量名。 Pattern 必选项。要使用的正则表达式模式。如果使用语法 1,用 "/" 字符分隔模式。如果用语法 2,用引号将模式引起来。 flags 可选项。如果使用语法 2 要用引号将 flag 引起来。标志可以组合使用,可用的有: g (全文查找出现的所有 pattern) i (忽略大小写) m (多行查找) ==============我是分割线================== test 方法 返回一个 Boolean 值,它指出在被查找的字符串中是否存在模式。 rgexp.test(str) 参数 rgexp 必选项。包含正则表达式模式或可用标志的正则表达式对象。 str 必选项。要在其上测试查找的字符串。 说明 test 方法检查在字符串中是否存在一个模式,如果存在则返回 true,否则就返回 false。 全局 RegExp 对象的属性不由 test 方法来修改。 ==============我是分割线================== ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性, ^ 也匹配 '\n' 或 '\r' 之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性, $ 也匹配 '\n' 或 '\r' 之前的位置。 \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。 \W 匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。 (pattern) 匹配pattern 并获取这一匹配。 所获取的匹配可以从产生的 Matches 集合得到, 在VBScript 中使用 SubMatches 集合, 在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 '\(' 或 '\)'。 g (全文查找出现的所有 pattern) i (忽略大小写) m (多行查找) ==============我是分割线================== /* * 需求:表单校验,带正则表达式~ 思路:先实现一个具体的表单组件校验,再抽取为一个通用的! */ <script type="text/javascript"> function checkUser_1(){ //校验用户名(实现一个具体的表单组件校验先) var flag; var oUser= document.getElementsByName("user")[0]; var val = oUser.value; //JS中,定义正则表达式,有两种方式 var reg = new RegExp("^[a-z]{4}$","i");//必须是四个字母,i表示不区分大小写。 // reg = new RegExp("^\\d{4}$");// 必须是四个数字。 // reg = /^\d{4}$/; var oSpan = document.getElementById("span_id_user"); if(reg.test(name)){ oSpan.innerHTML = "用户名正确".fontcolor("green"); flag = true; }else{ oSpan.innerHTML = "用户名错误".fontcolor("red"); flag = false; } return flag; } /* * 抽取为一个通用的!(name,reg,spanId,info_ok,info_err) *发现很多框的校验除了几个内容不同外,校验的过程是一样的。 * 所以进行了代码的提取。 */ function check(name,reg,spanId,info_ok,info_err){ var flag; var val = document.getElementsByName(name)[0].value; var oSpan = document.getElementById(spanId); if(reg.test(val)){ oSpan.innerHTML = info_ok.fontcolor("green"); flag = true; }else{ oSpan.innerHTML = info_err.fontcolor("red"); flag = false; } return flag; } function checkUser(){ //校验用户名。4位字母 var reg = /^[a-z]{4}$/i; return check("user",reg,"span_id_user","用户名正确","用户名错误"); } function checkPsw(){ //校验密码;4位数字 var reg = /^\d{4}$/; return check("psw",reg,"span_id_psw","密码格式正确","密码格式错误"); } function checkRepsw(){ //校验确定密码。只要和密码一致即可。 var flag; //获取密码框内容。 var psw = document.getElementsByName("psw")[0].value; //获取确认密码框内容。 var repsw = document.getElementsByName("repsw")[0].value; //获取确认密码的span区域。 var oSpan = document.getElementById("span_id_repsw"); if(psw==repsw){ oSpan.innerHTML = "两次密码一致".fontcolor("green"); flag = true; }else{ oSpan.innerHTML = "两次密码不一致".fontcolor("red"); flag = false; } return flag; } function checkMail(){ //校验邮件 var reg = /^\w+@\w+(\.\w+)+$/i; return check("mail",reg,"span_id_mail","邮件地址正确","邮件地址错误"); } function checkForm(){ // 提交事件处理。全部检验合格才返回真! if(checkUser() && checkPsw() && checkRepsw() && checkMail()){ return true; } return false; } </script> <!--onblur方法是失去焦点,onfocus是获得焦点--> <form id="form_id_1" onsubmit="return checkForm()"> 用户名称:<input type="text" name="user" onblur="checkUser()" /> <span id="span_id_user"></span> <br/> 输入密码:<input type="text" name="psw" onblur="checkPsw()" /> <span id="span_id_psw"></span> <br/> 确定密码:<input type="text" name="repsw" onblur="checkRepsw()" /> <span id="span_id_repsw"></span> <br/> 邮件地址:<input type="text" name="mail" onblur="checkMail()" /> <span id="span_id_mail"></span> <br/> <input type="submit" value="提交数据" /> </form> ==============我是分割线================== /* * 需求:form提交有两种! 第1种是:使用input type="submit" value="提交数据" 只要点击该submit按钮,会自动将所在的form表单中的所有数据打包发送到服务器 第2种是: 使用的form对象的submit()方法,实现自定义提交! */ <script type="text/javascript"> function mySubmit(){ //form提交方式之二:自定义提交,使用的是form对象的submit()方法 var oForm = document.getElementById("form_id_1"); oForm.submit(); } </script> <input type="button" value="我的提交" onclick="mySubmit()" /> </body> </html>
以上就是Javascript_16_DOM_form练习的内容,更多相关内容请关注PHP中文网(www.php.cn)!

The shift from C/C to JavaScript requires adapting to dynamic typing, garbage collection and asynchronous programming. 1) C/C is a statically typed language that requires manual memory management, while JavaScript is dynamically typed and garbage collection is automatically processed. 2) C/C needs to be compiled into machine code, while JavaScript is an interpreted language. 3) JavaScript introduces concepts such as closures, prototype chains and Promise, which enhances flexibility and asynchronous programming capabilities.

Different JavaScript engines have different effects when parsing and executing JavaScript code, because the implementation principles and optimization strategies of each engine differ. 1. Lexical analysis: convert source code into lexical unit. 2. Grammar analysis: Generate an abstract syntax tree. 3. Optimization and compilation: Generate machine code through the JIT compiler. 4. Execute: Run the machine code. V8 engine optimizes through instant compilation and hidden class, SpiderMonkey uses a type inference system, resulting in different performance performance on the same code.

JavaScript's applications in the real world include server-side programming, mobile application development and Internet of Things control: 1. Server-side programming is realized through Node.js, suitable for high concurrent request processing. 2. Mobile application development is carried out through ReactNative and supports cross-platform deployment. 3. Used for IoT device control through Johnny-Five library, suitable for hardware interaction.

I built a functional multi-tenant SaaS application (an EdTech app) with your everyday tech tool and you can do the same. First, what’s a multi-tenant SaaS application? Multi-tenant SaaS applications let you serve multiple customers from a sing

This article demonstrates frontend integration with a backend secured by Permit, building a functional EdTech SaaS application using Next.js. The frontend fetches user permissions to control UI visibility and ensures API requests adhere to role-base

JavaScript is the core language of modern web development and is widely used for its diversity and flexibility. 1) Front-end development: build dynamic web pages and single-page applications through DOM operations and modern frameworks (such as React, Vue.js, Angular). 2) Server-side development: Node.js uses a non-blocking I/O model to handle high concurrency and real-time applications. 3) Mobile and desktop application development: cross-platform development is realized through ReactNative and Electron to improve development efficiency.

The latest trends in JavaScript include the rise of TypeScript, the popularity of modern frameworks and libraries, and the application of WebAssembly. Future prospects cover more powerful type systems, the development of server-side JavaScript, the expansion of artificial intelligence and machine learning, and the potential of IoT and edge computing.

JavaScript is the cornerstone of modern web development, and its main functions include event-driven programming, dynamic content generation and asynchronous programming. 1) Event-driven programming allows web pages to change dynamically according to user operations. 2) Dynamic content generation allows page content to be adjusted according to conditions. 3) Asynchronous programming ensures that the user interface is not blocked. JavaScript is widely used in web interaction, single-page application and server-side development, greatly improving the flexibility of user experience and cross-platform development.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment