【发布时间】:2009-10-09 17:54:07
【问题描述】:
我正在使用 ASP.NET。
我不确定你会怎么称呼它,但我希望在名为 txtName 的文本框中显示文本。因此,当表单加载时,文本框将显示“必填”的褪色文本。然后,当用户在文本框内单击时,我希望用户在文本框中放置一个值。
这在 ASP.NET 中可行吗?如果是这样,这怎么办????
【问题讨论】:
我正在使用 ASP.NET。
我不确定你会怎么称呼它,但我希望在名为 txtName 的文本框中显示文本。因此,当表单加载时,文本框将显示“必填”的褪色文本。然后,当用户在文本框内单击时,我希望用户在文本框中放置一个值。
这在 ASP.NET 中可行吗?如果是这样,这怎么办????
【问题讨论】:
如果您可以使用 MS AjaxControlToolkit,有一个水印扩展器可以做到这一点。
MS Ajax TextBoxWatermark Extender
如果没有,您可能可以找到一个 jQuery 插件或推出您自己的 javascript。使用服务器端事件可能不会满足您的要求。
【讨论】:
onClick 是客户端事件。 onFocus 可能会更好。您可以使用 txtName.Attributes.Add("onFocus", "this.value = '';this.style.color = 'black';")
把它放在页面的 PreRender 事件中。
【讨论】:
这是一个很棒的 jQuery 插件:
http://www.mudaimemo.com/p/formnotifier/
【讨论】:
试试这样的:
<asp:TextBox ID="txtName" runat="server"
onclick="if (this.value == 'Required') {this.value=''}"
Width="275px">Required</asp:TextBox>
【讨论】:
如果使用 Ajax 工具包是一种选择或有意义的话,工具箱中有一个名为文本框水印的工具(请参阅http://www.asp.net/AJAX/AjaxControlToolkit/Samples/TextBoxWatermark/TextBoxWatermark.aspx)
【讨论】: