日付が正しく入力されているかどうか検査する例


スクリプトのテスト

 

ボタンをクリックすると、3つのテキストボックスに入力された文字(数字)が日付として正しいかどうかを検査します。

事故日  


解説

 入力された文字を日付として解釈する方法には、さまざまな手段があります。入力自体をさせずに、リスト形式のコンボボックスを使うということも、もちろん考えられますが、閏年や月ごとに最終日(30日、31日)が違うことまで検査するには、どうしてもスクリプトを使って検査をする必要があります。
 この例では、VBScript の関数(DateValue) 一つだけを使って、簡単に日付の検査をしています。
 余談ですが、このサンプルを作成する課程で、J(ava)Script には、With 文が用意されているのに、VBScript には用意されていないことに気付き、唖然としました(^^;)


スクリプトのソース(都合によりインデントは全て除去されています)

<script language="VBScript">
<!--
'日付の検査
Function CheckDate(strYear,strMonth,strDay)
Dim dteTmp

On Error Resume Next
CheckDate=DateValue (strYear & "/" & strMonth & "/" & strDay)


End Function


Sub cmdCheck_onClick()

If CheckDate(Document.form1.txtYear.value,Document.form1.txtMonth.value,Document.form1.txtDay.value) then
MsgBox "正しい日付が入力されています"
Else
MsgBox "間違った日付が入力されています"
End if

End Sub


-->
</script>


ページトップに戻る  スクリプト目次に戻る    スタートページに戻る