Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 显示换行符<;部门>;来自数据库的标记_Java_Jquery_Database_Line Breaks - Fatal编程技术网

Java 显示换行符<;部门>;来自数据库的标记

Java 显示换行符<;部门>;来自数据库的标记,java,jquery,database,line-breaks,Java,Jquery,Database,Line Breaks,我必须在标记中显示来自数据库的文章。本文是从textarea插入数据库的。我的问题是:我无法准确显示从textarea插入的结构(包括换行符) 我尝试使用下面的代码将enter字符替换为标记,但无效 <div id="tmpId">${f:h(dto.accPassage)}</div> <script> $(function(){ $('#tmpId').html($('#tmpId').html().replace(/\n/g,

我必须在
标记中显示来自数据库的文章。本文是从textarea插入数据库的。我的问题是:我无法准确显示从textarea插入的结构(包括换行符)

我尝试使用下面的代码将enter字符替换为
标记,但无效

<div id="tmpId">${f:h(dto.accPassage)}</div>

<script>
    $(function(){
        $('#tmpId').html($('#tmpId').html().replace(/\n/g, '<br />'));
    })
</script>
${f:h(dto.accpassession)}
$(函数(){
$('#tmpId').html($('#tmpId').html().replace(/\n/g,
')); })
我想知道是否有人能给我一些提示来解决这个问题

非常感谢。

如果您希望它与数据库中的完全相同,那么只需在
标记中渲染它,而不是在

<pre id="tmpId">${f:h(dto.accPassage)}</pre>
${f:h(dto.accpassession)}

这将保留所附文本块中的精确格式。

不带结束斜杠给出

既然您是从数据库中检索数据,为什么它是客户端的,而不是从数据库中检索数据后立即进行替换?不确定您使用的是什么(尽管这与此无关,因为这可以在任何语言中完成),但在PHP中,假设
$output
是您的DB结果,它将与

public static String nl2br(String s) {
    return s.replaceAll("\n","<br/>");
}
// usage
nl2br("some\ntext"); //will return "some<br/>text"

希望这有帮助

因为您使用的是java,所以在从数据库检索数据之后,您可以编写如下内容来替换新行

公共静态字符串nl2br(字符串s){
返回s.replaceAll(“\n”和“
”); } //用法 nl2br(“某些文本”)//将返回“一些
文本”
使用css正确渲染/n:

你好!下一行,下一行。 就你而言

${f:h(dto.accpassession)}

您应该将用于从数据库中获取它的语言放在标记中。如果他使用的是XHTML DOCTYPE

将无法验证。出于这个原因,PHP具有
nl2br()
函数。@FreekOne:他在使用PHP吗?O.oI向FreekOne致辞,FreekOne给出了一个解决方案,如果语言是PHP。+1同意Robert的说法,我已经更新了我的答案。完全忘记了:)@David:我也不知道,我只是想证明一下概念。谢谢mmhan,我尝试了你的方法,但没有成功。但是,如果我使用returns.replaceAll(System.getProperty(“line.separator”),“
;”;,它会像符咒一样起作用
public static String nl2br(String s) {
    return s.replaceAll("\n","<br/>");
}
// usage
nl2br("some\ntext"); //will return "some<br/>text"