我们尝试了几种方法来使文本框接受“输入”,换行符等。但我们仍然面临同样的问题。大多数“第三方”控件允许用户根据需要格式化文本。例如,添加颜色,字体,表格等。但是,对于大多数时尚网站,我们不希望允许用户以这种方式格式化文本。
但是我们仍然希望它们“进入”,所以我们禁用大多数功能(颜色,粗体,表格,插入图像等)。但我们还有另一个问题,复制和粘贴。在文本框和wham中看到人们从MS Word复制的情况并不少见,网站的所有风格都很糟糕!
这就是为什么我打开制作我自己的文本框,多行(ASP。网)的可能性,然后让权利按“Enter”(< br />)。
最佳方法是什么?
我有什么提示需要注意吗?
谢谢!
答案 0 :(得分:13)
将模式设置为TextBoxMode.MultiLine
在代码隐藏中,
myTextBox.TextMode = TextBoxMode.MultiLine
或在标记中
<asp:TextBox TextMode="MultiLine"
当用户在TextBox中输入文本时,它会以新行\r\n
返回给您。如果您想将其正确显示给用户,可以使用
myTextBox.Text.Replace(Environment.NewLine, "<br />")
答案 1 :(得分:1)
要避免此问题并在TextBox控件中允许HTML标记,您需要将Page指令的ValidateRequest更改为false。你可以像下面的代码那样做:
使用ValidateRequest =“false”