无法在 Ajax 输出字符串中插入换行符



我有一个Ajax脚本,它根据用户输入输出某些作业的标题和描述。虽然我可以毫无问题地显示这些内容,但我似乎无法在标题和描述之间插入换行符。我有以下内容:

outputString = savedData[i].firstName + ". Description: " + savedData[i].cardNumber;
var paragraph = $("<p />", {
text: outputString
});
$("#data").append(paragraph);

我尝试在描述之前的引号中插入传统的br换行符,以及、和\r\n,这两个字符只显示换行符的文本,而不是换行,也可以在引号之外插入,这会中断任何输出。如何成功实现换行?干杯

当您以文本形式提供outputString字符串时,html<br/>在字符串中显示为文本。您应该将其指定为html,并使用<br/>换行:

outputString = dataJobs[i].title + ". <br/>Description: " + dataJobs[i].description;
var paragraph = $("<p />", {
html: outputString
});
$("#data").append(paragraph);

如果您想特别添加<br/>,那么您可以执行以下操作:

// assuming that your dataJobs[i].title and dataJobs[i].description are defined
var paragraph = $("<p />");
paragraph
.append(dataJobs[i].title + '.')
.append('<br />')
.append("Description: " + dataJobs[i].description);
$("#data").append(paragraph);

您需要在单独的追加调用中添加<br/>,但不能作为字符串的一部分。希望这能有所帮助。

在下面的代码中,由于p标记的display属性默认设置为block,因此不需要使用换行符。在两个不同的P标签中设置标题描述,这将解决您的问题

请尝试以下代码。

outputString = "<p>Title: "+dataJobs[i].title+"</p><p>description: "+dataJobs[i].description+"</p>";
$("#data").append(outputString);

我认为"jQuery方式"应该是这样的:

var $outputString = $( "<span>" + dataJobs[i].title + ".<br>Description: " + dataJobs[i].description + "</span>" );
$( "#data" ).append($outputString.wrap( "<p></p>" ));
outputString = dataJobs[i].title + ". Description: " + dataJobs[i].description + "<br/>";

最新更新