2017-12-09 17 views
-1

2つのテキストボックスに表示される2つの日付の違いを見つける方法 ?次のコードを使用していましたが、日付の差が90日を超えると、 user.Hereの日付はdd/MM/yyyyの形式なので、23/8/17の日付から9/21/2017の日付を選択すると、その違いは423日になるのですか?2つの日付の違いを取得する

function checkDate() { 
      debugger; 
      var txtdate1 = document.getElementById('<%= txtFromDate.ClientID %>').value; 
      var txtdate2 = document.getElementById('<%= txtToDate.ClientID %>').value; 
      var date1 = new Date(txtdate2); 
      var date2 = new Date(txtdate1); 
      var timeDiff = Math.abs(date2.getTime() - date1.getTime()); 
      var diffDays = Math.ceil(timeDiff/(1000 * 3600 * 24)); 
      if (diffDays > 90) { 
       var Message = 'Dates are too far apart,It should be with in 3 months';} 
+0

でし[この](https://stackoverflow.com/questions/1607336/calculate-difference-between- 2日 - 日数)は助けになるのですか? –

+0

あなたのコードはJavaScriptであり、実際にはC#やASP.NETに関連するものはありませんので、正しくタグを付けてください。 –

+0

あなたのJavaScriptソリューションは、Epochからのミリ秒)を計算し、合計msecから日数を計算します。あなたはC#で同じ基本的なアルゴリズムでそれを行うことができますが、ティックはナノ秒です(エポックも異なりますが、ここでは関係ありません)。しかし、リンクされた答えは最も簡単な方法です。 – Jasen

答えて

0

結果は19 .Iは、日付のためのあなたの整形が間違っていると思うです:

Math.ceil(Math.abs((new Date('2017/08/23 00:00:00.000')).getTime()-(new Date('2017/09/11 00:00:00.000')).getTime())/(1000*3600*24)) 

//==> 19 
+0

私はポストバック、すなわちコードが背後にあるのをやめたいが、javascript – peter

関連する問題