2011-02-15 12 views
0

ページが読み込まれると、JavaScript内に今日の日付を保持する変数が必要になります。これまでのところ、私はこれを持っています:今日の日付をJavaScriptに挿入する

<script type="text/javascript"> 
    var TodayDate = <%Eval('System.DateTime.Now') %>; 
</script> 

大規模なバグです。助言がありますか?

答えて

3

JavaScriptの日付オブジェクトを使用してください。

var today = new Date(); 

それとも、サーバーの時間を必要とする場合

var today = new Date('<%= DateTime.Now.ToString() %>'); 
+0

最初のオプションはクライアントの日付を示し、2番目のオプションはサーバー側の日付と時刻を読み込むことに注意してください。クライアントが異なるタイムゾーンにある場合は、特に異なる場合があります。 –

+0

パーフェクト!ありがとう。私は基準点として日付に興味があり、私は時間帯を別々に扱います。 – frenchie

0

<script type="text/javascript"> 
    var TodayDate = new Date(); 
</script> 

と、特定の間違ったではありますか?

0

JavascriptのDate()オブジェクトを直接使用しないのはなぜですか?あなたはサーバーの日付を含む変数を持つようにしたい場合は

<script type="text/javascript"> 
    var TodayDate = Date(); 
</script> 
+0

日付はオブジェクトなので、 'new'を追加してください。 – naivists

0

は、やってのあなたの方法は、(行方不明アポストロフィとDateコンストラクタを除く)は、おそらく良いです。

var today = new Date(); 
0

あなたはJavascript内から日付を設定する前の人々の答えを使用することができます:あなたはクライアントの日付を持っている必要がある場合は、

var today = new Date('<%= DateTime.Now.ToString() %>'); 
//this assumes that the server has such a locale that DateTime.ToString can be 
//parsed by the javascript interpreter 

しかし:だから、それはする必要があります。

あなたが見ている問題は、ASPが現在の日付を表す文字列をJavaScriptソースコードに直接入れていることです。 JavaScriptが文字列を見て、それを正確に解析できるように、引用符を付ける必要があります。以下のような

何か:

<script type="text/javascript"> 
    var TodayDate = "<%Eval('System.DateTime.Now') %>"; 
</script> 

TodayDateが文字列であることを設定します。そのようなものとして使用するのか、それともDateオブジェクトとして使用するのですか?

関連する問題