在插入数据库(Asp.Net)时,在MultiLine Textbox或HTML Text区域中分隔换行符和空格的方法是什么。例如,如果我想插入
,我该怎么办?你好
世界
到包含换行符的数据库?并且还显示我应该怎么做?我不想使用编辑器。
但问题是如何分隔换行符和空格。现在当我插入
您好
世界
或hello world,它在数据库中以相同的字符保存。因此,虽然用户使用如上所述的换行符,但我无法将它们分开并显示问候语世界。来自TextBox或html区域的值与换行符或空格相同。
答案 0 :(得分:15)
换行符应该持久保存到db。当您检索信息并显示为Html时,只需用换行符标记(即 < b r / >
)替换换行符(即Environment.NewLine)
答案 1 :(得分:6)
< br />
对我没用。 (在将文本分配给html textarea时)
\r\n
做了。
答案 2 :(得分:3)
使用Razor(MVC3),显示或保留从我的数据库中提取的换行符,以下工作:
@Html.Raw(text_to_display.Replace(Environment.NewLine, "<br/>"))
答案 3 :(得分:2)
一些选择:
•将换行符转换为<br/>
•将文本放在<pre>
块中
•将每一行放在自己的<div>
块中。
请记住,HTML中忽略所有空格(SP,HT,LF,CR)(大部分时间)。
您在数据库中存储的内容应该是纯字符文本。将其转换为适当的HTML进行显示需要使用HTML序列替换某些字符。
答案 4 :(得分:1)
您可以使用&amp;#10;
答案 5 :(得分:1)
当试图保持格式化的回车符/ asp.net页上的textarea控件换行时,应从后面的代码中获取它的值,
textarea.Value = Server.HtmlDecode(myValue.Replace("\r\n", " "));
这将从以下位置呈现:
some blah blah\r\nblah blah
收件人:
some blah blah
blah blah
因此,当您使用javascript读取换行符时,可以使用:
textarea.value.indexOf("\n");
答案 6 :(得分:0)
我总是按照提供的方式存储用户输入,但是再次显示时必须始终非常小心。换行只是将System.Environment.Newline替换为“&lt; br /&gt;”的情况。不知道在以html格式呈现时保留其他空白区域的最佳做法是什么,听听别人做的事情会很有趣。
答案 7 :(得分:0)
通过将其转换为HTML实体
,可以轻松地在渲染到HTML后保留空白区域。
答案 8 :(得分:0)
您需要使用html标签替换vbcrlf(environment.newline)的所有实例[&lt; b r&gt;]
要允许多个空格,您需要用[&amp; n b s p;]
这会将您的普通测试转换为html“足够”以便被视为html(在我网站的输入文本部分为我工作)
从我的标签中,它只是[]之间的文字并删除空格...将标签文本放入页面导致它显示为html !!!!
答案 9 :(得分:0)
上面唯一对我有用的建议是:<& # 1 0 ;>
我正在使用现在在Linux服务器上运行的Front Page生成的文本框。
字符串的多次使用不会创建多个换行符,但新行上的字符串的单个条目提供了适合新段落的双换行符。
在使用Windows操作系统从服务器移动我的页面之前,我能够通过双重“进入”来完成换行符。