2

我有一个文本框网络控件,它会自动修剪其内容中的任何前导空格,因此当我得到文本时,它与用户最初编写的内容不同(如果他输入了前导空格)

有没有办法禁用此功能

4

3 回答 3

1

好吧,只有一种解决方案可以覆盖默认行为,即您编写一个 javascript 函数,将用户输入的内容分配给隐藏字段,然后在按钮或任何回发事件中捕获该隐藏字段的值

<asp:TextBox runat="server" ID="TextBox1" onkeydown="document.getElementById('HiddenField1').value += this.value" ></asp:TextBox>

问候

于 2013-05-21T15:32:46.680 回答
0

&nbsp;您需要用html替换空格。

例如

Dim TextWithSpaces As String = OriginalText.Replace(" ", "&nbsp;")

TextBox.Text = TextWithSpaces
于 2013-05-21T10:48:12.427 回答
0

实际上可能有另一种解决方法。ASP.NET 旨在替换U+0020(Unicode 代码点space),但它不会替换其他一些空白字符,例如U+00A0- no-break space

我遇到了需要在 ASP.NET 页面中保留的重复空格字符的问题RadTextBox(在保留空格时,它的行为与普通 ASP 一样TextBox,这意味着除了一个重复空格外,我丢失了所有空格)。

所以,如果你这样设置文本:

txtName.Text = name.Replace(' ', '\u00A0');

你从文本框中得到这样的文本:

name = txtName.Text.Replace('\u00A0', ' ');

对于用户来说,它看起来像在文本框中有空格,而 ASP.NET 不会删除这些类似空格的字符。

答案的灵感来自这个答案:我可以用什么来代替  ?

于 2015-05-07T12:22:10.863 回答