我目前正在使用内联 javascript 来清除输入文本的焦点默认值。如果用户没有输入任何内容,则默认值会在模糊后显示。代码如下:
onfocus="if(this.value==this.defaultValue) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;"
问题在于我必须将此片段添加到整个站点的每个文本输入中。与此等效的 jQuery 会自动为每个文本输入 (:text) 执行此操作。
我编造了以下两个错误。(1) 它清除文本字段可能具有的任何值。如果值是默认的 attr 值,我只希望它清除它。(2) blur 函数不插入默认值。我很确定我错过了一些非常简单的东西。
$(':text').focus(function() {
var value = $(this).val();
var defval = $(this).attr('value');
if(value == defval) {
$(this).val('');
}
});
$(':text').blur(function() {
var value = $(this).val();
var defval = $(this).attr('value');
if(value == '') {
$(this).val(defval);
}
});
提前致谢!