如何将换行符从多行文本框更改为HTML <br/>标签?

时间:2012-02-09 10:06:20

标签: asp.net html vb.net

我正在处理批量电子邮件发送应用,并且有一个带有多行文本框的页面,我希望将其用作允许用户输入电子邮件正文的方式。

我需要将文本框中的文本格式化为HTML,最重要的是我需要将换行符格式化为HTML,但是我似乎无法做到这一点。

每个人似乎都说使用的方法是:

textOut.Replace("\r\n", "<br />")

但这没有任何作用。我的文本框看起来像这样:

   <asp:TextBox runat="server" 
                            ID="txtMailBody" 
                            TextMode="MultiLine" 
                            Width="650" 
                            Height="150"/>

当我在文本框中输入文本时,例如:

Line 1

Line 2
Line 3

总是输出

Line 1 Line 2 Line 3

我在这里做错了吗?

5 个答案:

答案 0 :(得分:4)

以下三行:

TextBox2.Text = TextBox1.Text.Replace(vbLf, "<br>" + vbCrLf)

TextBox2.Text = TextBox1.Text.Replace(vbCrLf, "<br>" + vbCrLf)

TextBox2.Text = TextBox1.Text.Replace(vbNewLine, "<br>" + vbCrLf)

答案 1 :(得分:2)

试试这个

txtMailBody.Text.Replace(Environment.NewLine, "<br />")

希望有所帮助

答案 2 :(得分:1)

txtMailBody.Text.Replace("\n", "<br />")

这可以帮助您解决问题。

答案 3 :(得分:1)

我有同样的问题。当我使用以下代码时,它工作正常:

textOut.Replace(System.Environment.NewLine, "<br />")

答案 4 :(得分:-1)

php中有一个名为nl2br的函数,你可以搜索它的asp替代。