$('input[class*="defaulttext"]').each(function() {
this.value = $(this).attr('title');
$(this).addClass('defaultclass');
$(this).focus(function() {
if (this.value == $(this).attr('title')) {
this.value = '';
$(this).removeClass('defaultclass');
}
});
$(this).blur(function() {
if (this.value == '') {
this.value = $(this).attr('title');
$(this).addClass('defaultclass');
}
});
});
这基本上增加了文本框的背景文本效果(使用标题)。一旦选中,文字就会消失。jquery从提交文本框中删除默认文本
现在,我有一个可选字段的问题。如果用户不编辑这些字段,则默认背景文本将随表单一起提交。因此,我需要在表单提交后重置未编辑字段的值。任何想法如何做到这一点?
也许在表单提交,检查标题=值?如果是,则设置为“'。
你不加入“背景文字”,实际上是设置该字段的值。为什么不使用HTML5 [占位符](https://developer.mozilla.org/en/HTML/Element/input#attr-placeholder)属性? – j08691
j08691 - 很好的建议,但你也必须记住,大多数用户不使用支持它的现代浏览器。 – naspinski
对占位符属性不熟悉。将调查它,谢谢。 – domino