您好我从TextBox中获取JavaScript中的DateString,如
var dateString = document.getElementById('<%= txtEffDate.ClientID %>').value;
dateString值可以采用以下格式。
en-US - &gt; “2010/4/29”
fr-FR - &gt; “29/04/2010”
de-DE - &gt; “29.04.2010”
it-IT - &gt; “29/04/2010”
es-ES - &gt; “29/04/2010”
zh-CN - &gt; “2010年4月29日”
ja-JP - &gt; “2010/04/29”
sv-SE - &gt; “2010-04-29”
将其转换为Date Object,如下所示,
var d1 = new Date(dateString);
虽然它给了我错误的结果,比如fr-FR“29/04/2010”==&gt; “星期五5月4日00:00:00 UTC + 0530 2012”
哪个完全不相关,我该如何获得正确的日期?
我还设置了&lt;全球化文化=“自动”/&gt;在web.config&amp; &LT; asp:ScriptManager ID =“scr1”runat =“server”EnableScriptGlobalization =“true”/&gt;
答案 0 :(得分:0)
在本地,Javascript具有非常非常有限的解释日期字符串的能力。最好的办法是使用附加库来执行此操作,例如DateJS,或者将字符串发送到服务器并使用.Net的日期处理。
答案 1 :(得分:0)
首先,在web.config中设置< globalization culture="auto" />
不起作用,JavaScript在客户端运行。
如果您了解客户端当前的文化,那么您可以从txtEffDate
文本框的文本值解析年,月,日。然后你可以使用这段代码来构造Date对象。
var d = new Date();
d.setYear(2009);
d.setMonth(11);
d.setDate(2);
d.toString(); //"Wed Dec 02 2009 16:57:51 GMT-0500 (Eastern Standard Time)"