checkInput=function($input){
var _this = $input,
value = _this.val();//缓存默认值
_this.focus(function(){
if(_this.val() == value){//如果框中文字为默认值则清空
_this.val('');
}
})
.blur(function(){
if(_this.val() == ''){//如果框中为空则填充默认值
_this.val(value);
}
});
}
if(this.value!='备注'){}
如果我输入的就是:备注,那判断可能会出问题的,这个问题不知道该怎么解决?
$('#remark').keypress(function (e) {
if (e.which == 13) {
//13 是回车事件,每一个值代表不空的键盘字符
}
});
if (e.which == 13) {
//13 是回车事件,每一个值代表不空的键盘字符
}
有点看不懂按回车键判断是什么目的呢?
获取焦点的时候可以把默认的“备注”清空啊,然后焦点遗失判断textarea是否为空,即便是手动舒服的“备注”两个字也没关系吧。
可是这个焦点在再次移入之后,备注还是会被清空的
@张惠华: -.-.。这个简单的解决方案就是你把默认的字改为"请输入备注",谁在添加备注的时候会写这个?
@差生: 哈哈,是这样的,谢啦!!!
1、首先,这个在新版浏览器中,是一个属性placeHolder~
2、为该标签在设置一个自定义属性,标准是系统默认,还是人工输入的备注~
这是html5的东东吧?
@差生: 应该是~要兼容ie8-的话,就需要用自定义属性什么的配合控制了~
最好再配合一个onfocus事件~
<input type="text" value="备注" id="remark" onblur="checkInput(this)" style="color:gray;" onfocus="focusInput(this)"/> <script type="text/javascript"> var emptyTip = "备注"; function checkInput(obj) { var text = $.trim($(obj).val()); if (text == "" || text == emptyTip) { $(obj).val(emptyTip).css({ "color": "gray" }); } else { //输入了内容 $(obj).val(text).css({ "color": "black" });; } } function focusInput(obj) { var text = $.trim($(obj).val()); if (text == "" || text == emptyTip) { $(obj).val("").css({ "color": "black" }); } else { //输入了内容 $(obj).val(text).css({ "color": "black" });; } } </script>
默认的备注写在span中,让span标签显示在文本框的位置(下一层)。
当有输入值的时间,让他隐藏或显示到看不到的地方就行了。当然清空文本框时,再让他出现在文本框位置就行了。
这种方法比较好,就不会出现输入的值和默认值相同怎么处理了。