写入文本区域的文本在回读时会发生变化 - 删除 CR

Text written to textarea is altered when read back - CR is removed

我在 HTML 页面中有一个 <textarea> 元素。我正在使用 Javascript 向其中写入数据,并想稍后检查用户是否完全更改了文本。但是,如果数据包含任何回车符 returns,它们似乎会被静默删除,因此将从文本区域读取的文本与应该存在的内容的副本进行比较会失败。

JSFiddle 在这里演示问题:

https://jsfiddle.net/5j4erkst/

这是预期的行为吗?

是的,这是预期的行为。 The standard 说:

the value used in the value IDL attribute ... is normalized so that line breaks use U+000A LINE FEED (LF) characters.

这与提交给服务器的值不同:

It is normalized so that line breaks use U+000D CARRIAGE RETURN U+000A LINE FEED (CRLF) character pairs.