我有一个文本框web控件,可以自动修剪其内容中的任何前导空格,因此当我得到文本时,它与用户最初编写的内容不同(如果他进入了领先的空间)
是否有办法禁用此功能
答案 0 :(得分:1)
只有一种解决方案可以覆盖默认行为,即你编写一个javascript函数,用于指定用户输入隐藏字段的任何内容,然后在按钮或任何回发事件中捕获该隐藏字段的值你有
<asp:TextBox runat="server" ID="TextBox1" onkeydown="document.getElementById('HiddenField1').value += this.value" ></asp:TextBox>
问候
答案 1 :(得分:0)
您需要用
html替换空格。
E.g
Dim TextWithSpaces As String = OriginalText.Replace(" ", " ")
TextBox.Text = TextWithSpaces
答案 2 :(得分:0)
实际上可能还有另一种解决方法。 ASP.NET旨在替换U+0020
(space
的Unicode代码点),但它不会对其他一些空格字符执行此操作,例如U+00A0
- no-break space
。< / p>
我遇到了需要在RadTextBox
的ASP.NET页面上保留需要保留的空格字符的问题(在保留空格时表现得像普通的ASP TextBox
,这意味着我全部丢失了但是一个重复的空间。)
所以,如果你设置这样的文字:
txtName.Text = name.Replace(' ', '\u00A0');
你可以从文本框中获取文字:
name = txtName.Text.Replace('\u00A0', ' ');
对于用户来说,它看起来像文本框中有空格,ASP.NET不会删除这些类似空格的字符。
答案的灵感来自这个答案:What is the best invisible character can I use to replace ?