[英]Clearing a TextBox in ASP.NET
我有網頁,其中有一些默認值的文本框。 我必須從文本框中清除該值。 我有兩個選擇:
textbox.text="";
或者
textbox.text.remove(0,length);
我應該使用哪一種? 它是否對頁面性能有任何影響(我的頁面上放置了許多文本框)?
最好的方法是
textbox.text = string.Empty;
還要記住字符串類型是不可變的!
這沒什么區別 - 做對你和你的同事來說最易讀的事情。
許多人更喜歡使用string.Empty
。
TextBox.Text = String.Empty;
更具可讀性。 它清楚地說明了您要執行的操作:“將此文本框的文本屬性設置為空字符串”。我建議你去做這個作業,因為它既快又清晰。
textbox.text="";
或者
foreach (var item in Page.Controls)
{
if (item is TextBox)
{
((TextBox)item).Text = "";
}
}
據推測,您的意思是當用戶單擊框時使用 javascript 清除該值? 如果是這樣,它不會對性能產生任何影響。
我在大多數頁面中使用 jQuery,所以我只是連接這個函數來清除 onClick 的默認值,使用文本框的 ClientId:
$('#ctl00_TextBox').click(function() { $('#ctl00_TextBox').val('');
如果您的意思是在代碼隱藏中清除它,請使用以下命令:
yourTextBox.Text = String.Empty;
即使有數百/數千個調用,對性能的影響也很小,但是
textbox.text = "";
理論上應該稍微快一點,因為您只是分配一個新值而不是處理字符串(如 .Remove 那樣)
最好的方法是這樣做
textbox.text = String.Empty;
更新:如果你計算時鍾周期, String.Empty 實際上也會執行得更快,因為它不會創建一個新對象,而 "" 將創建一個新的 String 對象。
但是,您真的不應該太擔心這一點,沒有很多方法可以將字符串設置為空會導致性能問題! 你應該使用最易讀的那個......
如果我有 2 個要同時清除內容的文本框,該怎么辦?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.