0

我正在将字符串从 HTML 传递到 Javascript

<textarea ></textarea>

如果用户在文本区域内按“ENTER”...

例如

hello there
I hit the enter key

一旦这个字符串被提交到 javascript,它会是什么样子?

是这样的吗?

pass_character = "hello there \n I hit the enter key";

但 '\n' 似乎是错误的。我做了一个测试

text = pass_character.split(' ');
if(text[i] == '\n')
       do something

当它已经传递给javascript时,我想知道换行符或“输入”的等价物,这样我就可以在以后的代码中管理文本。

4

3 回答 3

1

我会\r\n在将文本添加到文本区域时使用,因为它保留了格式并且不呈现 HTML 实体。如果您打算将该文本用作 HTML,则可能需要将其转换为换行符。Using\n将适用于基于 Unix 的系统,但您可能会或可能不会在旧版本的 IE 中遇到问题。更重要的是 - 当用户复制文本并粘贴时,原始格式也将被保留,您可能需要考虑是否有条件地应用换行符作为回车和/或换行符。

http://jsfiddle.net/NgcuF/1/

于 2013-02-15T02:13:54.307 回答
1

是的,等效代码将是换行符,但在您的示例中,\n.

于 2013-02-15T02:09:31.390 回答
0

根据 HTML 规范,换行符可以是换行符 (LF)、回车符 (CR) 或 CR LF 对。这意味着从 JavaScript 的角度来看,HTML 换行可能是'\n''\r''\r\n',具体取决于实现。

当提交包含文本区域的表单时,浏览器需要将换行符规范化为 CR LF,这是对它们的 Internet 约定。这就是浏览器所做的。但他们不需要在内部为元素内容这样做,仅在准备提交表单数据时。

于 2013-02-15T07:33:35.600 回答