如何在javascript中设置日期格式?

时间:2012-08-08 07:04:08

标签: javascript asp.net telerik rad-controls

我想为我的radtime选择器转换日期时间格式。我得到2012-8-2-13-00-00 当我从我的radtime选择器中选择日期时作为我的输出。当我尝试转换为日期时,它表示无效日期。

JavaScript:

function SourqtyValidation()
{
var specifiedtime = document.getElementById('<%=txtSpecifiedArrvialTime.ClientID %>').value;
                alert(specifiedtime);
                var a = new Date(specifiedtime);
var actuvalarrivaltime = document.getElementById('<%=txtActualArrivalTime.ClientID %>').value;
alert(actuvalarrivaltime);
                var b = new Date(actuvalarrivaltime);
                b.format("dd/MM/yyyy hh:mm:ss");
                alert(b);
                var difference =Math.round((a - b) / 1000);
                alert(difference);
}

aspx:

//txtSpecifiedArrvialTime = predifened as 2012/08/02 09:35:55;

  <telerik:RadTimePicker ID="txtActualArrivalTime" runat="server" EmptyMessage="Actual Arrival Time">                                                        </telerik:RadTimePicker>

那么如何才能在几分钟内获得两次差异呢?

2 个答案:

答案 0 :(得分:3)

要获得时差,日期应采用相同的格式,
“2012-8-2-13-00-00”格式不正确,请转换为“2012/08/02 13:00:00”格式 你可以通过将它除以1000来获得差异。

您可以使用它将字符串转换为日期时间

 var dt = '2012-8-2-13-00-00'.split(/\-|\s/);
    dat = new Date(dt.slice(0,3).reverse().join('/')+' '+dt[3]+':'+dt[4]+':'+dt[5]);

答案 1 :(得分:1)

尝试使用 Datejs ,它有非常方便的方法:

例如:

Date.parse('Thu, 1 July 2004 22:30:00');

Date.parseExact("10/15/2004", "M/d/yyyy");  // The Date of 15-Oct-2004

非常好用于在javascript中处理数据时间的库。

Datejs是一个开源JavaScript日期库。

Datejs