c# - 文本框中文本的消失和重新出现

标签 c# javascript jquery asp.net visual-studio-2010

<asp:TextBox ID="TextBox2" runat="server" value="Your Text here" onfocus=" this.value = '';" onblur="if(this.value == '') ****{ this.value='?????'; }****"></asp:TextBox>

当我单击文本框时,我希望文本框中的文本消失,我可以通过我使用过的 onfocus 来实现这一点......

但是,当文本框为空时,我希望显示之前输入的值,如果是第一次输入,即如果我之前没有输入任何文本,则应显示默认值(“此处为您的文本”)。

例如:我第一次单击文本框并输入值“80”,然后再次单击文本框,内部的值应该清除,如果我没有输入任何值并单击外部,则文本框中应显示“80”,而不是“此处的文本”。

谢谢你。

最佳答案

如果您的浏览器支持 HTML5:

<input type="text" placeholder="Your Text here" />

如果您想支持默认情况下不支持的浏览器的占位符属性,这里有一个 JavaScript 后备:

$('[placeholder]').focus(function() {
   var input = $(this);
   if (input.val() == input.attr('placeholder')) {
       input.val('');
       input.removeClass('placeholder');
   }
}).blur(function() {
    var input = $(this);
    if (input.val() == '' || input.val() == input.attr('placeholder')) {
        input.addClass('placeholder');
        input.val(input.attr('placeholder'));
    }
}).blur();

关于c# - 文本框中文本的消失和重新出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15132302/

相关文章:

c# - 将 ListView 绑定(bind)到另一个类中的属性

c# - Word Interop - 如何确定 Word 文档的页眉/页脚中是否有页码

c# - C# 中的静态字段初始值设定项

javascript - Onclick window.location 并传递参数

c# - LogManager.configuration 为空

javascript - Angular2 在服务内应用过滤器

javascript - 在javascript的每个数组元素中添加索引

javascript - 点击问题的 Accordion

jquery - rails 3 : jquery ajax form calling twice?

jquery - BX slider - 响应式 - 最小/最大幻灯片