JavaScript字符串换行符? | javascript換行符號
我刚刚使用这个愚蠢的JavaScript测试了一些浏览器:Windows上的IE8和Opera9使用%0D%0A.我测试过的所有其他浏览器(Windows上的Safari4和Firefox3.5以及Linux上的Firefox3.0)都使用data:text/html,
.它们都可以在设置值时处理,尽管IE和Opera将会在内部再次将其转换回。有一个SitePoint文章,其中包含一些在Javascript中称为Lineendings的更多细节。另请注意,这与HTML文件本身中的实际行结尾无关(%0D%0A和data:text/html,&...我刚刚使用这个愚蠢的JavaScript测试了一些浏览器:
Windows上的IE8和Opera 9使用%0D%0A.我测试过的所有其他浏览器(Windows上的Safari 4和Firefox 3.5以及Linux上的Firefox 3.0)都使用data:text/html,<form><textarea name="foo">foo%0abar</textarea><input type="submit"></form>.它们都可以在设置值时处理 ,尽管IE和Opera将会 在内部再次将其转换回 。 有一个SitePoint文章,其中包含一些在Javascript中称为Line endings的更多细节。
另请注意,这与HTML文件本身中的实际行结尾无关(%0D%0A和data:text/html,<form><textarea name="foo">foo%0abar</textarea><input type="submit"></form>都给出了相同的结果)。
提交表单时,所有浏览器都会在URL编码中将新行规范化为%0D%0A。 为了看到这一点,加载例如 data:text/html,<form><textarea name="foo">foo%0abar</textarea><input type="submit"></form>并按“提交”按钮。 (某些浏览器会阻止已提交页面的加载,但您可以在控制台中看到URL编码的表单值。)
不过,我认为你真的不需要做任何决定。 如果您只想在换行符上拆分文本,可以执行以下操作:
lines = foo.value.split(/ | | /g);