Jquery 如何删除焦点上输入的默认值
我有一个输入框,其中指定了默认值文本。当用户关注字段时,如何删除此文本: 代码Jquery 如何删除焦点上输入的默认值,jquery,input,default,onfocus,Jquery,Input,Default,Onfocus,我有一个输入框,其中指定了默认值文本。当用户关注字段时,如何删除此文本: 代码 不要这样做。使用jQuery水印脚本: $(“输入[name='kp1_description'])。水印(“输入按键说明”) 如果你手工操作的话,你需要考虑很多事情。例如,当文本框失去焦点时会发生什么情况?如果没有值,则需要读取帮助器文本。如果有,你应该尊重这些改变 只是更容易让其他人做这件事:) 应该这样做 已更新,忘记焦点没有焦点输出事件的第二个参数,因为没有,它必须与模糊链接: 您还应考虑为此创建自己的函
不要这样做。使用jQuery水印脚本:
$(“输入[name='kp1_description'])。水印(“输入按键说明”)
如果你手工操作的话,你需要考虑很多事情。例如,当文本框失去焦点时会发生什么情况?如果没有值,则需要读取帮助器文本。如果有,你应该尊重这些改变
只是更容易让其他人做这件事:)
应该这样做
已更新,忘记焦点没有焦点输出事件的第二个参数,因为没有,它必须与模糊链接:
您还应考虑为此创建自己的函数,例如:
$.fn.ToggleInputValue = function(){
return $(this).each(function(){
var Input = $(this);
var default_value = Input.val();
Input.focus(function() {
if(Input.val() == default_value) Input.val("");
}).blur(function(){
if(Input.val().length == 0) Input.val(default_value);
});
});
}
那就这样用吧
$(document).ready(function(){
$('input').ToggleInputValue();
})
有了HTML5,你就可以不用Javascript了:只需使用而不是
value
。
我认为这是一个很好的添加,但当然您需要首先检查浏览器兼容性。HTML:
<form method="post">
<input type="text" id="customer" value="Username"/>
<input type="Submit" value="Login" class="rc" />
</form>
<script>
$('#customer').on({
focus:function(){
if(this.value == 'Username') this.value = '';
},
blur:function(){
if(this.value == '') this.value = 'Username';
}
})
</script>
Javascript代码:
<form method="post">
<input type="text" id="customer" value="Username"/>
<input type="Submit" value="Login" class="rc" />
</form>
<script>
$('#customer').on({
focus:function(){
if(this.value == 'Username') this.value = '';
},
blur:function(){
if(this.value == '') this.value = 'Username';
}
})
</script>
$(“#客户”)。在({
焦点:函数(){
如果(this.value=='Username')this.value='';
},
模糊:函数(){
如果(this.value='')this.value='用户名';
}
})
就这些,我希望它能有所帮助。
var defaultForInput=“abc”代码>
提交表单时,请检查输入(id=“myTextInput”)值是否为“空字符串”,如果是,请将其替换为(defaultForInput)。超级复制程序短版本
$('#input_id').focus(function() {
$(this).val("");
});
我认为这将有助于普通JavaScript:
(function () {
let input = document.querySelector ("input[name='kp1_description']");
input.onfocus = function () {
this.placeholder = this.value;
this.value = '';
};
})();
这会将值保留在占位符中,而不是将其完全删除。如果您不喜欢,请删除占位符行。但是,将整个库用于一项简单的任务并不是最好的主意。没错,我只是认为这个轮子不需要重新发明。有很多场景你必须考虑,使用库可以简化很多。他用jQuery标记了他的问题,因此使用jQuery插件可能是完成这项任务最实用的方法。+1用于代码重用。有些问题很难解决,应该由一个库来解决,而不是由地球上的每一个代码猴子来重新实现。在JavaScript中,人们对这一点尤其不满意。这很有趣,因为它可能看起来微不足道,但实际上有很多事情要考虑……再次更新,抱歉我半睡着了:这不是一个答案,但在将来,它可能是复制的。
<input type="text" id="anything" placeholder="enter keypress description">
(function () {
let input = document.querySelector ("input[name='kp1_description']");
input.onfocus = function () {
this.placeholder = this.value;
this.value = '';
};
})();