JavaScript与jQuery实现文本框默认值显示与清除功能

作者:竹影

时间:2026-10-28

浏览:165

本文介绍如何在Web开发中实现文本框的默认值提示效果。通过原生HTML的onfocus和onblur属性,以及jQuery的focus和blur事件监听,可以在用户获得焦点时清除默认提示文字,失去焦点且内容为空时恢复默认值,提升用户体验。

文章目录

文本框默认值效果实现原理

本文旨在实现文本框默认值的设置与移除效果,具体表现为当鼠标点击进入文本框时,灰色的提示文字自动消失。

文本框默认值效果实现原理

原生HTML onfocus/onblur属性实现

第一种方法是通过在input标签中直接添加onfocus属性来实现,示例代码如下:

代码如下:

<input id="keyword" name="keyword" size="10" class="inputstyle keywords" value="请输入关键字进行搜索"
onfocus='if(this.value=="请输入关键字进行搜索"){this.value="";}; '
onblur='if(this.value==""){this.value="请输入关键字进行搜索";};'>

onfocus属性不仅可用于值处理,还可用于动态改变CSS样式,具体实现代码如下:

代码如下:

<input id="keyword" name="keyword" size="10" class="inputstyle keywords" value="请输入关键字进行搜索"
onfocus='if(this.value=="请输入关键字进行搜索"){this.value="";}; this.className="input01"'
onblur='if(this.value==""){this.value="请输入关键字进行搜索";}; this.className="input02"'>

jQuery事件监听实现方案

第二种方法是利用jQuery库来实现相同的功能,示例代码如下:

代码如下:

$(document).ready(function() {
var vdefault = $('#keyword').val();
$('#keyword').focus(function() {
 //获得焦点时,如果值为默认值,则设置为空
 if ($(this).val() == vdefault) {
 $(this).val("");
 }
 });
 $('#keyword').blur(function() {
 //失去焦点时,如果值为空,则设置为默认值
 if ($(this).val()== "") {
 $(this).val(vdefault); ;
 }
 });
});

当然,实现该功能的方式还有很多种,此处仅列举了作者实际使用过的两种方案。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章