いろいろ応用できそうなので、protocalender.js で値が入る前後に何かの処理を実行する方法を書いてみます。
protocalendar.js には今のところ拡張ポイントのようなものは用意されていないのですが(検討中です)、
値を入れる際に、直前の値と比較して何か処理をしたいという要望があったので、現時点でのやり方を解説します。
方法としては、以下のように InputCalendar#changeInputValue をオーバーライドします。
<script type="text/javascript">
Object.extend(
InputCalendar.prototype,
{
changeInputValue: function() {
this.input.value = this.dateFormat.format(this.calendarController.getSelectedDate(), this.options.lang);
// TODO
}
});
</script>

スプーキーズラボブログは株式会社スプーキーズの技術関連の情報を発信するブログです。プロダクト一覧、お問い合わせなどはスプーキーズラボのサイトをご覧ください。
バグ報告はコメントか、お問い合わせからお願いします。
設置サポートは有料でのみ受け付けています。その場合も、お問い合わせからお願いします。
2月 1st, 2010 at 1:38 PM
非常に便利に使わせてもらっています。
以前から入力された日付で他の情報を変更できるように、コールバック出来ないか考えていましたが、これで対応できそうです。
ただこの方法ではマウスからの入力では対応できるのですが、キーボードからの直接入力ですとうまく行きません。
なにか良い方法はありませんでしょうか。
(最新がダウンロードが出来ないので、今は v1.1.0で確認しています)