【问题标题】:'\n' being removed from Input field'\n' 正在从输入字段中删除
【发布时间】:2019-06-09 21:04:49
【问题描述】:

我正在处理具有输入和选择标签的动态表单。

  1. 输入数据并提交。
  2. 查看侧边栏输入的信息with edit button
  3. edit button点击:form will render with values
  4. 编辑数据并点击更新按钮进行更新

到底发生了什么:

同时点击编辑按钮:步骤编号。 3 : 如果输入字段有类似

的数据
I am in first line 
I am in second line
I am in third line

它像第 3 步一样呈现在表单上:

I am in first lineI am in second lineI am in third line

问题: 1. 输入字段不允许换行吗? 2. 如果是,我试过了:style="white-space: pre-line; white-space: pre-wrap;",但没用 3.如何停止在输入字段中删除'\n'?

谢谢

【问题讨论】:

  • 你试过<textarea>element吗? <input> 有一个限制:“单行文本字段。换行符会自动从输入值中删除。” (MDN)
  • 改用<textarea>
  • 不,我想要使用 的解决方案
  • 输入文本元素用于单行。对于多行,textarea 是最简单的选择。下一个最佳选择是滚动您自己的文本控件。
  • 您可以使用 textarea 并在 javascript/css 中弄乱高度。为 textarea 存在的全部原因而装配输入字段似乎过于复杂了一件相当简单的事情。

标签: javascript textarea line-breaks html-input


【解决方案1】:

我找到了解决方案:

   // this is for textarea string 
var elementIdName = document.getElementById(key2);
key2Value = (elementIdName && elementIdName.tagName === "TEXTAREA") ?val.replace(/\\n/g, "<br />") : val;

【讨论】:

    猜你喜欢
    • 2011-12-12
    • 1970-01-01
    • 1970-01-01
    • 2014-06-15
    • 2021-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多