プロが教えるわが家の防犯対策術!

凄く悩んでいるのですが、良かったら教えてください。
入力フォームに

日付 『20040712』 と入力したら、そのすぐ横に
配列から検索して、『(月)』と表示させたい
のですが、どうもうまくいきません。
教えてください。

テキストフォームに(月)と表示させたいのでは
なく、<span>タグを使用して作成したいのです。

ご伝授お願いします。

A 回答 (1件)

曜日の取得方法ですが、「Date」クラスの中に「getDay()」と言う曜日を取得することの出来る便利なメソッドが存在します。


このメソッドでは、日~土までの文字列が返ってくるわけではなく、0~6までの数値が返されます。
0は日曜日、1は月曜日と言う風に各々の数値に曜日が割り当てられています。

つまり、配列で0[日],1[月],・・・,6[土]と言う風に保持しておけば、曜日を表示させることが可能になるのです。
言葉でずらずらと説明しただけでは判り辛いと思いますので、実例を書いておきたいと思います。
尚、説明は長くなる為、一切書かないので、ご了承ください。

<HTML><BODY>
<INPUT TYPE="TEXT" VALUE="" onKeyUp="if(this.value.length == 8) document.all['spnDay'].innerHTML = getDay(this.value);"><SPAN ID="spnDay"></SPAN>
<SCRIPT>
var STR_DAY = new Array("日", "月", "火", "水", "木", "金", "土");

function getDay( yyyymmdd ) {
var year = yyyymmdd.substring(0, 4);
var month = yyyymmdd.substring(4, 6) - 1;
var date = yyyymmdd.substring(6, 8);

var dateValue = new Date();
dateValue.setFullYear(year, month, date);
return STR_DAY[dateValue.getDay()];
}
</SCRIPT>
</BODY></HTML>
    • good
    • 0
この回答へのお礼

回答有難うございます。
勉強になりました。
ソースまで書いていただいて、
早速実現できる事ができました。
有難うございます。

お礼日時:2004/07/15 21:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!