清除ASP.NET中的TextBox
我有网页,其中有文本框具有一些默认值。
我必须清除文本框中的值。 我有2个选择
1. textbox.text=""; 2. textbox.text.remove(0,length);
在这里,我想知道我应该使用哪一个。 它是否会对页面性能产生任何影响,因为页面中放置了许多文本框。
谢谢
最好的方法是..
textbox.text = string.Empty;
还记得字符串类型是不可变的!
它没有任何区别 – 为您和您的同事做最可读的事情。
许多人更喜欢使用string.Empty
。
- 两种选择之间的性能差异太小,无法衡量。
-
TextBox.Text = String.Empty;
更具可读性。 它清楚地说明了你要做的事情:“将此文本框的text属性设置为空字符串”。
我建议你选择任务,因为它更快,更清晰。
据推测,你的意思是当用户点击框中的int时用javascript清除值? 如果是这样,它对性能没有任何影响。
我在大多数页面中使用jQuery,所以我只是使用文本框的ClientId连接此函数以清除onClick上的默认值:
$('#ctl00_TextBox').click(function() { $('#ctl00_TextBox').val('');
如果你的意思是在代码隐藏中清除它,请使用:
yourTextBox.Text = String.Empty;
textbox.text="";
要么
foreach (var item in Page.Controls) { if (item is TextBox) { ((TextBox)item).Text = ""; } }
然而,即使有数百/数千个电话,对性能的影响也会很小
textbox.text = "";
理论上应该稍微快一点,因为你只是分配一个新值而不是处理字符串(如.Remove)
最好的办法就是这样做
textbox.text = String.Empty;
更新:如果您正在计算时钟周期,String.Empty实际上也会执行得更快,因为它不会创建新对象,而“”将创建一个新的String对象。
但是,你真的不应该太在意这个问题,没有太多方法可以将字符串设置为空,这会导致性能问题! 你应该使用最具可读性的…