在 IE 11 中,我使用 ToLocaleDateString() 得到了有趣的结果。返回的字符串在浏览器中看起来不错,例如“1/28/2014 11:00:46 AM”,但是如果我将该值复制并粘贴到纯文本编辑器中,它看起来像这样:“?1?/? 28?/?2014?11?:?00?:?46??AM”。
有趣的是,如果我将文本粘贴到 Microsoft 产品中,它看起来不错……问题是,如果您尝试以编程方式使用该值来创建日期,则它无效。您可以通过在 IE11 中打开控制台并在其上使用 ToLocaleDateString() 创建一个新日期来测试这一点,然后尝试使用结果字符串在 javascript 或您选择的语言中创建一个新日期(我'我在这里使用 ASP.NET...)。
我做错了什么,还是我应该通过其他方式与 javascript Date 交互?我怎样才能摆脱那些时髦的符号?
编辑: 感谢下面的评论,我能够弄清楚未显示的字符是什么,它们是从左到右的标记。根据我将值粘贴到的编辑器和编辑器设置使用的编码,文本会以不同的方式显示:有时带有“?”,有时没有。