【问题标题】:Placeholder/Example text in textbox for user用户文本框中的占位符/示例文本
【发布时间】:2013-06-07 18:09:02
【问题描述】:

让示例文本显示在 asp.net 文本框 中的步骤是什么。

例如,ID = "textboxDate" 的文本框内部有 [mm/dd/yyyy] 供用户参考。

【问题讨论】:

标签: asp.net textbox


【解决方案1】:

你总是可以使用:

<input ID="placeholderTextBox" type="text" runat="server" placeholder="mm/dd/yyyy" />

在后面的代码中,您可以使用

获取或设置值
Dim myValue As String = placeholderTextBox.value or placeholderTextBox.value = "whatsoever"

【讨论】:

    【解决方案2】:

    Visual Studio 可能不知道该属性。未在 ASP.net 中注册的属性将按原样传递和呈现。

    &lt;asp:TextBox ID="TextBox1" runat="server"  Width="187px" placeholder="mm/dd/yyyy"&gt;&lt;/asp:TextBox&gt;

    所以上面的代码(基本上)呈现为:

    &lt;input type="text" placeholder="mm/dd/yyyy"/&gt;

    【讨论】:

      【解决方案3】:

      但是占位符对许多 IE 浏览器都有效,因为占位符是 html5 的东西。

      尝试使用modernizr 框架。它适用于所有浏览器,包括所有 IE

      这里有一个示例代码。

      if(modernizr.input.placeholder) {
         //insert placeholder polyfill script here. 
      }
      

      【讨论】:

      • 我只是想说这在 IE 中不起作用,我看到了你的帖子 - 谢谢 :)
      【解决方案4】:

      我相信你想要一个placeholder 属性:

      <asp:TextBox ID="placeholderTextBox" runat="server" placeholder="mm/dd/yyyy"></asp:TextBox>
      

      【讨论】:

      • 这正是我想要的。谢谢!
      • 我有一个问题。请回答。我将这个attribute 用于TextBox 但Visual Studio 说:Attribute 'placeholder' is not a valid attribute of element 'TextBox' 但是程序运行良好,我可以得到我想要的结果。此消息会导致任何问题吗?
      • @Jeyhun,不要担心那个警告信息。
      • @Jeyhun,这条消息只是一个烦恼。可以通过在后面的代码中设置占位符来避免这种情况,例如placeholderTextBox.Attributes.Add("placeholder", "mm/dd/yyyy")。把它放在代码后面也有点烦人,但至少消息停止了。 (这适用于 Visual Studio 2015 和可能的其他版本。)
      猜你喜欢
      • 1970-01-01
      • 2020-05-27
      • 1970-01-01
      • 2023-04-08
      • 2015-12-15
      • 2020-08-17
      • 2017-12-03
      • 2015-12-15
      • 2011-07-29
      相关资源
      最近更新 更多