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