$('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');
}
});
});
这基本上为文本框添加了背景文本效果(使用标题)。一旦被选中,文字就会消失。
现在,我对可选字段有疑问。如果用户不编辑这些字段,则会使用表单提交默认背景文本。所以我需要在提交表单后重置未编辑字段的值。任何想法如何做到这一点?
也许在表单提交上,检查title = value?如果是,则设置为''。
答案 0 :(得分:1)
我们使用了HTML5 Placeholder jQuery Plugin,在这种情况下效果很好。
答案 1 :(得分:1)
根据您的代码,您可以:
$("#yourForm").submit(function () {
$('input[class*="defaulttext"]').val("");
};
答案 2 :(得分:0)
您可以这样做,并检查title = value的值。或者,您也可以使用jQuery.data()
标记已修改的字段答案 3 :(得分:0)
$("#yourForm").submit(function () {
$('input.defaulttext').each(function() {
if($(this).val() === $(this).attr('title')) { $(this).val(''); }
});
};