【问题标题】:Can't get exact print out result from HTML textarea无法从 HTML 文本区域获得准确的打印结果
【发布时间】:2019-02-17 05:46:33
【问题描述】:

我正在为医疗处方创建一个表格。这里textarea 字段名称之一是new prescription。医生会在此处插入值,例如

1. medicine-l
   1+1+1
2. medicine-2
   1+0+1

但是当我打印出处方时,这个 new prescription 字段显示了它的价值

1.medicine-1 1+1+1 2.medicine-2 1+0+1

但我想打印出new prescription 的值,就像医生插入一样。

我该怎么做?有人帮忙吗?

【问题讨论】:

标签: html forms richtextbox


【解决方案1】:

在您打印文本之前,实际上会保留换行符。 HTML 不检测文本中的换行符。

在 JS 上试试这个:

textAreaText.replace(/(?:\r\n|\r|\n)/g, '<br>');

How do I replace all line breaks in a string with <br /> tags?

在 PHP 上试试这个: http://php.net/manual/en/function.nl2br.php

【讨论】:

    【解决方案2】:

    您应该可以使用CSS property white-space 执行此操作。

    示例:

    .textarea-class {
      white-space: pre-wrap;
    }
    

    如果有各种选项,请咨询 the MDN docs 以获得非常好的概述,但您似乎想要 pre(原样),pre-wrap(保持间距和换行符,但换行),甚至pre-line(保留换行符但不保留间距和换行)。

    您需要将其放入your print stylesheet。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-07-23
      • 2013-07-07
      • 1970-01-01
      • 2019-12-30
      • 2011-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多