如何在网页或电子邮件上使用时正确显示字符串中的换行符

本文关键字:显示 字符串 换行符 网页 电子邮件 | 更新日期: 2023-09-27 18:35:02

我有一个字符串,我把它保存到数据库中。 问题是它仅在我处于编辑模式表单时显示换行符。当我只是在我的网页中显示它(不编辑(或在电子邮件中使用它时,字符串显示时没有换行符,并且它们都一起运行(见下图(。我使用的是MVC 4和VS2012。

任何人都可以告诉我如何让换行始终显示吗?

该字符串是从具有以下代码的窗体生成的:

string LF = " 'r'n ";
//string LF = Environment.NewLine; // tried this also, did'nt work.
string appendComments = "  ";
                contact.Subject = "Quick Quote";
                appendComments += "Make Sure to Contact Customer by: " + Request.Form["radio"].ToString(); ; 
                appendComments += LF + LF + "CARPET CLEANING: " + LF;
                if ((Request.Form["bedRms"]) != "0") { appendComments += "Bedrooms =" + Request.Form["bedRms"] + ", " + LF; }
                if ((Request.Form["familyRm"]) != "false" || (Request.Form["familyRm"]) == "on" ) { appendComments += "Family Room = Yes, " + LF; }
                if ((Request.Form["livingRm"]) != "false" || (Request.Form["livingRm"]) == "on") { appendComments += "Living Room = Yes, " + LF; }
                if ((Request.Form["diningRm"]) != "false" || (Request.Form["diningRm"]) == "on") { appendComments += "Dining Room = Yes, " + LF; }
                if ((Request.Form["ld-combo"]) != "false" || (Request.Form["ld-combo"]) == "on") { appendComments += "Living/Dining Combo = Yes, " + LF; }
                if ((Request.Form["pets"]) != "false" || (Request.Form["pets"]) == "on") { appendComments += "Pet Spot/Stain Issue = Yes " + LF; }
Here I save it to the database.

换行在编辑表单中工作:在编辑形式 http://www.leadingedgewebsites.com/linefeedworks.jpg 中工作

在网页上显示换行时不起作用:不适用于网页 http://www.leadingedgewebsites.com/linefeednowork.jpg

换行符在电子邮件上不起作用:在电子邮件 http://www.leadingedgewebsites.com/inemail.jpg 中不起作用

感谢您抽出宝贵时间帮助我。

谢谢。

如何在网页或电子邮件上使用时正确显示字符串中的换行符

HTML会忽略所有多余的空格,包括换行符。

若要更改此设置,请使用 <pre> 标记或 white-space: pre CSS 属性。

对于网页,您必须将" 'r'n "替换为 <br /> ,因为它只识别 HTML 换行符。

对于电子邮件和其他,您应该使用 Environment.NewLine 而不是 " 'r'n " ,因为这将显示基于容器的换行符。

如果要在网页上显示新行,请使用换行符标记 - <BR>