簡體   English   中英

如果是默認文本,則asp.net c#文本框onclick為空。 如果不是默認文本,則保持不變

[英]asp.net c# text box onclick empty if default text. Unchanged if not default text

我在aspx頁面中放置了一個文本框控件:

<asp:TextBox ID="SearchCriteriaTextBox" runat="server" Text="Enter Search Criteria" Width="150px" ForeColor="GrayText" OnClick="this.value = ''; this.style.color = 'black'" OnBlur="javascript:changeText(this.id)" />

因此,文本框在單擊時變為空。 保持我鍵入的內容。 但是,如果我在文本框外單擊,然后單擊返回文本框以編輯我鍵入的文本,則該文本將無法正常工作。 它使整個文本框為空。

基本上,我試圖獲得類似的功能,例如該論壇中的搜索文本框。 默認情況下,文本為:“搜索ASP.NET”。 單擊以鍵入一些內容,文本框為空。 我鍵入“ Monir”,然后在框外單擊。 它保留文本“ Monir”。 我單擊返回以編輯文本,該文本保留為“ Monir”,因此現在我可以添加“ like asp.net”,因此文本為:“ Monir like asp.net”

任何幫助請??

嘗試這個:

<asp:TextBox runat="server" ID="txt" onblur="if(this.value=='')this.value=this.defaultValue;" value="Enter Search Criteria" onfocus="if(this.value==this.defaultValue)this.value='';"></asp:Textbox>
<asp:TextBoxWatermarkExtender ID="txtSearchWaterMark" 
    runat="server" TargetControlID="SearchCriteriaTextBox" 
    WatermarkText="Enter Search Criteria..." />

<asp:TextBox ID="SearchCriteriaTextBox" runat="server" />

我知道這篇文章很舊,但是我使用了由Kashif提供的答案並進行了少量編輯。 代替asp標簽,我不得不使用ajax標簽。 另外,還有一個補充說明,如果您希望此字段為可選字段,並且要從文本框中提取文本,則如果用戶未輸入,則第一個答案中描述的模糊/聚焦方法將拉占位符任何東西。 但是,TextBoxWatermark沒有,因此如果文本框是可選字段,則要使用該文本框。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM