关于input标签获取焦点并检测及内容的方法

本文介绍了一个简单的HTML+JavaScript实现方案,用于实时监控输入框的值变化,并根据不同情况动态调整输入框的背景颜色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

好久没写了,今天来写点东西


要判断input的value值,不管他是你手敲的(onkeydown)还是鼠标点击粘贴(没有相应事件)<的,都能执行相应的功能,就需要开一个定时器不断地去侦测了



这里我写了个简单的demo来模拟

<span style="font-size:18px;"><!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script type="text/javascript" src="jquery-1.11.1.min.js"></script>
	<script type="text/javascript">
$(document).ready(function() {
	var tim1=null,tim2=null;
	$("input").focus(function(event) {<span style="white-space:pre">		</span>//获取焦点后执行
		$(this).css('background-color', 'blue');
			// alert($(this).val()=="")
			tim1=setInterval(function(){<span style="white-space:pre">	</span>//开定时器检测其内容
			if($("input").val()!=""){<span style="white-space:pre">	</span>//判断其value值是否是所需要的
				$("input").css('background-color', 'red');
				console.log("asdas")
			}
			
		}, 30)
	});
	$("input").blur(function(event) {<span style="white-space:pre">	</span>//失去焦点执行清除定时器
		clearInterval(tim1);
	});


});

	</script>
	<style type="text/css">
input{
	width: 200px;
	height: 30px;
	background-color: yellow;
}
	</style>
</head>
<body>
	<input type="text">
	<div>sauhshfashdgioho</div>
</body>
</html></span>


当然,如果你需要在input显示出来就获取焦点而不是点击才获取焦点,也可以,不过这里要在input里面加入onfocus="ap()">>(ap()为自定义的函数),将上面代码中focus执行的内容封入ap()函数内,就可以了。


这里要注意一点ap()函数必须在ready或者onload外边,不能放在里面,否者会提示找不到该函数


<span style="font-size:18px;"><!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script type="text/javascript" src="jquery-1.11.1.min.js"></script>
	<script type="text/javascript">
 var tim=null;
 function ap() {
  tim=setInterval(function(){
   if($("input").val()!=""){
    $("input").css('background-color', 'red');
    console.log("asdas")
    }
  }, 30)
 }

$(document).ready(function() {
	$("input").focus();
	$("input").blur(function(event) {
		clearInterval(tim1);
	});
});</span><span style="font-size: 24px;">

	</script>
	<style type="text/css">
input{
	width: 200px;
	height: 30px;
	background-color: yellow;
}
	</style>
</head>
<body>
	<input type="text"onfocus="ap()" >
	<div>sauhshfashdgioho</div>
</body>
</html></span>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值