【问题标题】:Request.Form treats Newlines differently in TextArea in ASP .NETRequest.Form 在 ASP .NET 的 TextArea 中以不同的方式处理换行符
【发布时间】:2012-06-01 22:05:13
【问题描述】:

我有两个页面,上面有文本区域控件。当用户提交一页时,换行符被视为 char(13) + char(10)。但在另一页上,换行符被视为 char(10)。我通过查看 Request.Form 字典确认了这一点。

这两个页​​面托管在同一个 ASP .NET 4.0 Web 窗体应用程序中,从标记的角度来看,这些页面看起来完全相同。我在同一浏览器中以同一用户身份登录。

当我在浏览器中使用 JavaScript 检查控件中是否存在 char 10 和 char 13 时,两个页面都只包含一个 char(10)。

似乎 IIS/ASP.NET 配置为在两个页面上以不同的方式处理表单请求,但我无法弄清楚差异在哪里。是什么导致了这种行为?

【问题讨论】:

  • 哪个操作系统和浏览器?

标签: asp.net webforms newline


【解决方案1】:

不同的操作系统使用不同的字符组合来表示一个新行。

在 Windows 上是 CR + LF,在 Linux 上是 LF,在 Mac 上是 CR。

CR = 回车 LF = 换行

如果您在 Notepad++ 中复制/粘贴文本并选择“查看”>“显示所有字符”,则可以看到行尾字符。

【讨论】:

  • 我知道,这是一个很好的观点,但我使用的是 Windows,并且我使用同一个浏览器实例来提交两个页面,所以我不明白这怎么可能有所作为。
猜你喜欢
  • 2014-11-01
  • 2011-09-13
  • 2011-12-15
  • 1970-01-01
  • 2011-11-23
  • 2015-08-24
  • 1970-01-01
  • 2013-08-18
  • 1970-01-01
相关资源
最近更新 更多