js入门-文本框输入特定内容控制另一个文本框
在填写表单时,有时需要某些文本框隐藏,当一文本框输入特定内容时才会显示隐藏的文本框,这一功能可以用onchange事件或oninput事件实现。下面对比下两种方法实现的区别:
onchange()定义和用法
onchange 事件会在域的内容改变时发生。

本文示例是在A文本框输入A时显示隐藏的文本框B。
完整代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">
window.onload=function(){
var oTxta=document.getElementById('txt_a');
var oDiv_b=document.getElementById('div_b');
oTxta.onchange=function showTxtb(){
if (oTxta.value=='A') {
oDiv_b.style.display='block';
}
}
}
</script>
</head>
<body>
<div class="div_a">
A:<input type="text" id="txt_a" value="" onchange="showTxtb()">
</div>
<div id="div_b" style="display: none;">
B:<input type="text" id="txt_b" value="">
</div>
<div id="div_c">
C:<input type="text">
</div>
</body>
</html>
效果如下:

可见使用onchange需要点击页面其他位置取消文本框焦点才能触发。
oninput()定义和用法
oninput 事件在用户输入时触发。
该事件在 <input> 或 <textarea> 元素的值发生改变时触发。
提示: 该事件类似于 onchange 事件。不同之处在于 oninput 事件在元素值发生变化是立即触发, onchange 在元素失去焦点时触发。另外一点不同是 onchange 事件也可以作用于 <keygen> 和 <select> 元素。
语法
HTML 中:
<element oninput="myScript">
JavaScript 中:
object.oninput=function(){myScript};
完整代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">
window.onload=function(){
var oTxta=document.getElementById('txt_a');
var oDiv_b=document.getElementById('div_b');
oTxta.oninput=function showTxtb(){
if (oTxta.value=='A') {
oDiv_b.style.display='block';
}
}
}
</script>
</head>
<body>
<div class="div_a">
A:<input type="text" id="txt_a" value="" oninput="showTxtb()">
</div>
<div id="div_b" style="display: none;">
B:<input type="text" id="txt_b" value="">
</div>
<div id="div_c">
C:<input type="text">
</div>
</body>
</html>
效果如下:

可见使用onchange不需要点击页面其他位置取消文本框焦点,输入内容即可触发。
js入门-文本框输入特定内容控制另一个文本框的更多相关文章
- JS和vue文本框输入改变p标签的内容测试
文本框输入,p标签的内容自动变成文本框的内容,如下是三种方法的测试: 方法1:JS里的onchange,当文本框内容改变事件,该事件里写的方法是,获取p标签本身,然后获取文本框的值,赋值给变量,最后给 ...
- JS文本框输入限制
1上面的文本框只能输入数字代码(小数点也不能输入): CODE: <input onkeyup="this.value=this.value.replace(/\D/g,'')&quo ...
- 监听文本框输入开发仿新浪微博限制输入字数的textarea插件
监听文本框输入 Firefox.Chrome.IE9,IE10 均支持 oninput 事件,此外所有版本的 IE 均支持 onpropertychange 事件. oninput 事件在用户输入.退 ...
- 实时监听文本框输入 oninput、onchange与onpropertychange事件的用法和区别
前端页面开发的很多情况下都需要实时监听文本框输入,比如腾讯微博编写140字的微博时输入框hu9i动态显示还可以输入的字数.过去一般都使用onchange/onkeyup/onkeypress/onke ...
- 【学习】文本框输入监听事件oninput
真实项目中遇到的,需求是:一个文本框,一个按钮,当文本框输入内容时,按钮可用,当删除内容时,按钮不可用. 刚开始用的focus和blur, $(".pay-text").focus ...
- jQuery实现限制input框 textarea文本框输入字符数量的方法
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 转:zTree树控件扩展篇:巧用zTree控件实现文本框输入关键词自动模糊查找zTree树节点实现模糊匹配下拉选择效果
是否可以借助于zTree实现文本框输入关键词自动模糊匹配zTree下拉树,然后选择下拉树内节点显示在文本框内且隐藏下拉树. 看到这个需求脑子里头大致已经想到了要如何实现这样一个需求,当时是限于时间问题 ...
- 监听文本框输入oninput和onpropertychange事件
前端页面开发的很多情况下都需要实时监听文本框输入,比如腾讯微博编写140字的微博时输入框动态显示还可以输入的字数.过去一般都使用onchange/onkeyup/onkeypress/onkeydow ...
- 转摘:ashx+jquery-autocomplete文本框输入提示功能Asp.net
引入所需文件 <script type="text/javascript" src="JS/jquery-1.8.2.min.js"></sc ...
随机推荐
- jsp 假分页的实现
原本做毕设做了一堆表格需要读出数据.为了以后的数据可能会很多做准备,这里实现一个以基于jsp页面实现的假分页. 假分页:实际上数据库一次过把所有数据读出来,通过对输出展示的控制来实现对数据分页的假象. ...
- maven -maven.test.skip skipTests
-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下. -Dmaven.test.skip=true,不执行测试用例,也不编译测试 ...
- JS nodeList转数组,兼容IE低版本
一.前言 nodeList转数组貌似很少会这样去操作,但我在做图片懒加载时,我获取了所有需要做懒加载的img元素,也就是一个NodeList对象,打个比方: 对这些元素进行src修改后,我想将此项从N ...
- mybatis mapper xml文件的导入方式和查询方式
mybatis mapper xml文件的导入方式和查询方式 ssm框架 Mybatis mapper与SQLSession的关系 每个基于MyBatis的应用都是以一个SqlSessionFact ...
- [SPOJ22343] Norma
Description 现在有一个长度为\(N(N\leq 500000)\)的序列,定义区间\([l,r]\)的价值为\([l,r]\)的最小值乘上\([l,r]\)的最大值乘上\([l,r]\)的 ...
- SpringBoot之使用Scheduled做定时任务
定时任务有好多开源框架比如Quartz,@Scheduled是Spring的一个定时任务注解,通过注解配置就能够轻量级的定时任务,简单方便. 一.@Scheduled注解介绍 这里先贴上@Schedu ...
- ssh隧道的妙用
场景说明:A主机和B主机在同一个园区网,A主机可以出公网,B主机不可以出公网.渗透工程师已经拿下A主机控制权. 一.如何在外网访问到B主机 方案:ssh本地端口映射背景:当我们拿下A主机之后想和B主机 ...
- SpringMVC4集成ehcache
前言 使用SpringMVC4集成ehcache来缓存服务器数据. 开发环境 SpringMVC4.ehcache2.6. 项目结构 SpringMVC 集成ehcache 1.pom.xml //除 ...
- 《Microsoft SQL Server 2012 T-SQL Fundamentals》
书名 <SQL Server 2012 T-SQL基础教程> 图片 时间 2017-8 学习 每章后面有习题很适合我,看完写sql的能力有质的飞跃好书 http://tsql.soli ...
- ModBus通信协议的【Modbus RTU 协议使用汇总】
1.RTU模式 当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符.这种方式的主要优点是:在同样的波特率下,可比ASCII方式传 ...