1

我有一组信息要使用 django 模板标签在我的网页上呈现。

 {% for product in sales %}

      <div>
        <span>Customer:{{product.to_user}}</span><br>
        <span>{{product.time}}</span><br>
        <p class="message">{{product.message}}</p>
      </div>

      {% endfor %}

{{product.message}}模板标签包含由换行符('\n')分隔的信息。但是,换行符不会在 HTML 中呈现,信息显示在一行中,省略了“\n”。我尝试从<p>标签中捕获信息并将 , 替换\n<br>, 并再次将文本设置在同一<p>标签中。但这似乎不起作用。
如上所述,这是我的方法。

$(document).ready(function(){

      let renderedText = $(".message").text()

      //alert(renderedText)
      final_txt = renderedText.replace(/\n/g,"<br>")

      $(".message").val(final_txt)
       
    })

为了使其正常工作,我应该进行哪些更改或添加?提前致谢。

4

2 回答 2

1

像这样使用模板过滤器linebreaksbr

<p class="message">{{ product.message|linebreaksbr }}</p>
于 2020-08-31T15:48:29.110 回答
1

为了获得行信息,您可以使用pre 标记来跟踪空格和新行。

let message = `Lorem ipsum text Lorem ipsum text Lorem ipsum text.
Lorem ipsum textLorem ipsum text

Lorem ipsum textLorem ipsum textLorem ipsum textLorem ipsum textLorem ipsum textLorem ipsum textLorem ipsum textLorem ipsum textLorem ipsum text`;
<div><pre>{message}</pre></div>

于 2021-06-05T12:53:57.480 回答