900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > JavaScript表单事件 获取焦点:focus 失去焦点:blur 输入事件:input 变化事件:change

JavaScript表单事件 获取焦点:focus 失去焦点:blur 输入事件:input 变化事件:change

时间:2019-10-25 10:29:40

相关推荐

JavaScript表单事件  获取焦点:focus  失去焦点:blur  输入事件:input  变化事件:change

JavaScript表单事件

焦点处理

焦点处理主要包括focus(获取焦点)和blur(失去焦点)事件类型。所谓焦点,就是激活表单字段,使其可以响应键盘事件。

获取焦点:focus

当单击或使用Tab键切换到某个表单元素或超链接对象时,会触发该事件。focus事件是确定页面内鼠标当前定位的一种方式。在默认情况下,整个文档处于焦点状态,但是单击或者使用Tab键可以改变焦点位置。

示例:输入框被点击时触发,会在文本框后面提示“请输入11位手机号!!!”

<form action="">PhoneNumber:<input type="text" placeholder="input your phone number" maxlength="11"><span></span></form><script>let inpEle = document.querySelector("input[type='text']");let spanEle = document.querySelector("span");//焦点事件(输入框被点击时触发)inpEle.addEventListener("focus", e => {spanEle.innerHTML = `请输入11位手机号!!!`;});</script>

失去焦点:blur

blur事件类型表示在元素失去焦点时响应,它与focus事件类型是对应的,主要作用于表单元素和超链接对象

示例:输入框失去点击焦点时,会在文本框后面提示“请输入11位手机号!!!”,并且输入内容是非数字时,会提示“请输入数字!!!”

<form action="">PhoneNumber:<input type="text" placeholder="input your phone number" maxlength="11"><span></span></form>inpEle.addEventListener("blur", e => {let event = e || window.event;let inputInfo = event.target.value;if(!isNaN(inputInfo)) {spanEle.innerHTML = `请输入11位手机号!!!`;}else {spanEle.innerHTML = `请输入数字!!!`;spanEle.style.color = `red`;}console.log(inputInfo);});

输入事件input

inout事件类型在输入框有东西输入时响应,主要作用于表单元素输入的内容和设定的值相比较,可以和正则表达式一起连用来判断输入内容是否合法

示例:输入框输入手机号码,直到输入内容和正则表达式的值相等还时,便提示“输入正确!!!”

form action="">PhoneNumber:<input type="text" placeholder="input your phone number" maxlength="11"><span></span></form>inpEle.addEventListener("input", e => {let event = e || window.event;let inputInfo = event.target.value;let re = /^[1][3-9][0-9]{9}$/g;if (re.test(inputInfo)) {spanEle.innerHTML = `输入正确`;spanEle.style.color = `green`;} else {spanEle.innerHTML = `不正确!!!`;spanEle.style.color = `red`;}});

变化事件change

change事件类型在输入框输入的值变化时响应,当上一次输入的值和当前输入的值不同时便会触发,会多次触发事件

示例:输入框输入值前后两次不同的时候,都会提示“跟上次不一样!!!”

form action="">PhoneNumber:<input type="text" placeholder="input your phone number" maxlength="11"><span></span></form>inpEle.addEventListener("change", e => {spanEle.innerHTML = "跟上次不一样!!!";});

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。