0

From_date To_date No_of days の 3 つのフィールドを含むフォームを設計しました。from_date と to_date の差を計算したいのですが、差の値は nu_of 日で表示されます。このコードを試しました:

<script>
function difference()
{
var d1=document.getElementById("P1_FROM_DATE");
var d2=document.getElementById("P1_TO_DATE");
var d3=document.getElementB`yId("P1_NO_DAYS");
if(d2.value < d1.value)
{
alert("todate should not be less than from date");
d2.focus();
return false;
}
else
{
d3.value=(d2.value - d1.value)+1;
return true;
}
}
</script>

このコードが実行され、条件が満たされると、no_of_days は NaN を示します。それで、解決策は何ですか教えてください。

サビャサチよろしく

4

2 に答える 2

0

テキストのみを認識しているフィールドで日付ベースのメソッドを使用しようとしています。これらの値をテキストから変換するには Date クラスを使用し、これらのメソッドを使用して日付演算を実行する必要があります。

幸運を!

于 2012-05-02T11:31:40.513 に答える
0

一般的な式。日付 [x] 形式は ISO でなければなりません (例: 'yyyy/mm/dd')。

var diffDays = 
     Math.floor( (new Date([date1]) - new Date[date2]) / (1000*60*60*24) );

ところで、document.getElementById("P1_FROM_DATE")入力フィールドだと思います。その場合document.getElementById("P1_FROM_DATE").value、失望を避けるために使用してください。

于 2012-05-02T11:32:40.923 に答える