首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >javascript清除字段值输入

javascript清除字段值输入
EN

Stack Overflow用户
提问于 2013-09-06 04:29:18
回答 5查看 142K关注 0票数 24

我正在制作一个简单的表单,我有以下代码来清除初始值:

Javascript:

代码语言:javascript
复制
function clearField(input) {
    input.value = "";
};

html:

代码语言:javascript
复制
<input name="name" id="name" type="text" value="Name" onfocus="clearField(this);"/>

但我不希望的是,如果用户填写了输入,但再次单击它,它就会被删除。我希望仅当输入为空时,该字段的起始值才为"Name“。提前谢谢你!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-09-06 04:38:00

对于不支持占位符属性的浏览器,这里有一个使用jQuery的解决方案。

代码语言:javascript
复制
$('[placeholder]').focus(function() {
  var input = $(this);

  if (input.val() == input.attr('placeholder')) {
    input.val('');
    input.removeClass('placeholder');
  }
}).blur(function() {
  var input = $(this);

  if (input.val() == '' || input.val() == input.attr('placeholder')) {
    input.addClass('placeholder');
    input.val(input.attr('placeholder'));
  }
}).blur();

点击此处:http://www.hagenburger.net/BLOG/HTML5-Input-Placeholder-Fix-With-jQuery.html

票数 10
EN

Stack Overflow用户

发布于 2013-09-06 04:33:47

喜欢吗?

代码语言:javascript
复制
<input name="name" id="name" type="text" value="Name" 
   onblur="fillField(this,'Name');" onfocus="clearField(this,'Name');"/>

和js

代码语言:javascript
复制
function fillField(input,val) {
      if(input.value == "")
         input.value=val;
};

function clearField(input,val) {
      if(input.value == val)
         input.value="";
};

更新

下面是一个相同的demo fiddle

票数 11
EN

Stack Overflow用户

发布于 2013-09-06 04:32:34

HTML:

代码语言:javascript
复制
<input name="name" id="name" type="text" value="Name" onfocus="clearField(this);" onblur="fillField(this);"/>

JS:

代码语言:javascript
复制
function clearField(input) {
  if(input.value=="Name") { //Only clear if value is "Name"
    input.value = "";
  }
}
function fillField(input) {
    if(input.value=="") {
        input.value = "Name";
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18645357

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档