jquery 如何实现 用户名文本框click都清空文本内容

 我来答
learneroner
高粉答主

推荐于2018-05-17 · 关注我不会让你失望
知道大有可为答主
回答量:1.1万
采纳率:91%
帮助的人:6347万
展开全部

jquery的 val() 方法可以设置或返回表单字段的值,所以清空文本框只要将其value值设为空即可。下面代码给出文本框获得焦点即清空文本的效果

$("input:text").focus(function() { // 获得焦点事件
    $(this).val("");
});

进一步,文本框获得焦点后清空内容是为了便于输入,但有时不想输入,那么失去焦点时还得恢复到原来的内容,为此还要如下代码

$("input:text").blur(function() {  // 失去焦点事件
    $(this).val()!="" || $(this).val(text);   // 如果文本框为空,那就设置之前定义的text变量值
});

下面的例子给出了包含以上内容的综合用法:

  1. 创建Html元素

    <div class="box">
    <span>单击文本框清空原有内容,离开文本框时若未填写内容则设置为之前的内容:</span><br>
    <div class="content">
    <input type="text" name="name" value="John"/>
    </div>
    </div>
  2. 设置css样式

    div.box{width:300px;padding:20px;margin:20px;border:4px dashed #ccc;}
    div.box span{color:#999;font-style:italic;}
    div.content{width:250px;margin:10px 0;padding:20px;border:2px solid #ff6666;}
    input[type='text']{width:200px;height:35px;padding:5px 10px;margin:5px 0;border:1px solid #ff9966;}
  3. 编写jquery代码

    $(function(){
    var text;  // 全局变量用于保存文本框的内容
    $("input:text").focus(function() {
    text = $(this).val();
    $(this).val("");
    });
    $("input:text").blur(function() {
    $(this).val()!="" || $(this).val(text);
    });
    })
  4. 观察效果

  • 初始状态

  • 点击文本框后效果

  • 没有修改内容即离开文本框则恢复原始文本

  • 如果修改了内容,则显示修改的值

idoilike110
2012-09-06 · TA获得超过163个赞
知道小有建树答主
回答量:161
采纳率:100%
帮助的人:152万
展开全部
设置文本框的onfocus,然后清除内容
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ZivenZhang
2012-09-06 · TA获得超过228个赞
知道小有建树答主
回答量:303
采纳率:0%
帮助的人:119万
展开全部
remove()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式