カレンダーには、いくつかのイベントが用意されています。
onBeforeDeselect | 日の選択が解除される前 |
onBeforeSelect | 日が選択される前 |
onChangePage | 他の月が表示された |
onClear | クリアされた |
onDeselect | 日の選択が解除された |
onRender | 表示が完了した |
onReset | リセットされた |
onSelect | 日が選択された |
手軽なところでカレンダーの表示が完了したらアラートダイアログを表示してみます。表示完了時に関数を呼び出すようにするには
カレンダーオブジェクト.onRender = 処理先関数名
と指定します。(実際のサンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>yuiカレンダーサンプル(イベント処理)</title>
<link rel="stylesheet" href="calendar.css" type="text/css" media="all">
<script src="YAHOO.js" type="text/javascript"></script>
<script src="event.js" type="text/javascript"></script>
<script src="calendar.js" type="text/javascript"></script>
<script type="text/javascript"><!--
function dispCalender()
{
calenderObj = new YAHOO.widget.Calendar("calenderObj","calender");
calenderObj.onRender = check;
calenderObj.render();
}
function check()
{
alert("描画完了");
}
// --></script>
</head>
<body>
<h1>yuiカレンダーサンプル(イベント処理)</h1>
<form>
<input type="button" value="カレンダーを表示" onClick="dispCalender()">
</form>
<div id="calender"></div>
</body>
</html>
カレンダーの日が選択された場合にはonSelect(またはonBeforeSelect)を使います。(実際のサンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>yuiカレンダーサンプル(イベント処理)</title>
<link rel="stylesheet" href="calendar.css" type="text/css" media="all">
<script src="YAHOO.js" type="text/javascript"></script>
<script src="event.js" type="text/javascript"></script>
<script src="calendar.js" type="text/javascript"></script>
<script type="text/javascript"><!--
function dispCalender()
{
calenderObj = new YAHOO.widget.Calendar("calenderObj","calender");
calenderObj.onSelect = check;
calenderObj.render();
}
function check()
{
alert("選択されました");
}
// --></script>
</head>
<body>
<h1>yuiカレンダーサンプル(イベント処理)</h1>
<p>選択するとアラートダイアログが表示されます</p>
<form>
<input type="button" value="カレンダーを表示" onClick="dispCalender()">
</form>
<div id="calender"></div>
</body>
</html>
選択が解除されたらイベントを呼び出すようにするにはonDeselect(またはonBeforeDeselect)を使います。(実際のサンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>yuiカレンダーサンプル(イベント処理)</title>
<link rel="stylesheet" href="calendar.css" type="text/css" media="all">
<script src="YAHOO.js" type="text/javascript"></script>
<script src="event.js" type="text/javascript"></script>
<script src="calendar.js" type="text/javascript"></script>
<script type="text/javascript"><!--
function dispCalender()
{
calenderObj = new YAHOO.widget.Calendar("calenderObj","calender");
calenderObj.onDeselect = check;
calenderObj.render();
}
function check()
{
alert("選択が解除されました");
}
// --></script>
</head>
<body>
<h1>yuiカレンダーサンプル(イベント処理)</h1>
<p>選択してから、その選択を解除するとアラートダイアログが表示されます</p>
<form>
<input type="button" value="カレンダーを表示" onClick="dispCalender()">
</form>
<div id="calender"></div>
</body>
</html>
現在表示されている月ではない他の月のカレンダーに切り替わるとonChangePageイベントが発生します。(実際のサンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>yuiカレンダーサンプル(イベント処理)</title>
<link rel="stylesheet" href="calendar.css" type="text/css" media="all">
<script src="YAHOO.js" type="text/javascript"></script>
<script src="event.js" type="text/javascript"></script>
<script src="calendar.js" type="text/javascript"></script>
<script type="text/javascript"><!--
function dispCalender()
{
calenderObj = new YAHOO.widget.Calendar("calenderObj","calender");
calenderObj.onChangePage = check;
calenderObj.render();
}
function check()
{
alert("ページが切り替えボタンが押されました");
}
// --></script>
</head>
<body>
<h1>yuiカレンダーサンプル(イベント処理)</h1>
<p>別の月に移動するボタンをクリックするとアラートダイアログが表示されます</p>
<form>
<input type="button" value="カレンダーを表示" onClick="dispCalender()">
</form>
<div id="calender"></div>
</body>
</html>
日が選択されたら、その日が何日なのかを取得したい場合があります。この場合にはselectedDatesプロパティを参照します。日付の範囲が指定されている場合には配列として返されます。以下のサンプルはクリックすると、クリックした日付を表示します。(実際のサンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>yuiカレンダーサンプル(イベント処理)</title>
<link rel="stylesheet" href="calendar.css" type="text/css" media="all">
<script src="YAHOO.js" type="text/javascript"></script>
<script src="event.js" type="text/javascript"></script>
<script src="calendar.js" type="text/javascript"></script>
<script type="text/javascript"><!--
function dispCalender()
{
calenderObj = new YAHOO.widget.Calendar("calenderObj","calender");
calenderObj.onSelect = check;
calenderObj.render();
}
function check()
{
alert(calenderObj.selectedDates+"が選択されました");
}
// --></script>
</head>
<body>
<h1>yuiカレンダーサンプル(イベント処理)</h1>
<p>選択した日付が表示されます</p>
<form>
<input type="button" value="カレンダーを表示" onClick="dispCalender()">
</form>
<div id="calender"></div>
</body>
</html>
[
複数の日を選択できるようにする]
[
目次へ]
(2006.2.20)