2011-01-28 10 views
4

jquery datepickerはボタンのクリックを表示して、表示状態(表示/非表示)を決定する方法はありますか?

.showCalendarは私のボタンで、#weekDateは私の入力フィールドです...私はトグルにボタンをしたいのですが、私はドキュメントを見て、財産のisHiddenのisVisibleタイプを見つけることができませんでした。 datepickerの表示状態を取得する方法はありますか?私の知る限り

$('.showCalendar').click(function() { 
    $('#weekDate').datepicker("show"); 
}); 

答えて

2

、(明らかに、UIウィジェットdoes not work:visibleを適用)日付ピッカーの表示状態を取得する方法はありません。

ただし、toggleイベントに結合することによって、あなたの問題を解決することができます:

$(".showCalendar").toggle(function() { 
    $("#weekDate").datepicker("show"); 
}, function() { 
    $("#weekDate").datepicker("hide"); 
}); 
+0

ブリリアント!フレデリックに感謝! – PruitIgoe

+1

カレンダーがトグルボタンから表示され、入力ブラーから隠されている場合、これはうまくいきません。次のトグルは再びカレンダーを隠そうとします。 – Jawa

5

あなたがウィジェットの可視性をチェックし、次のようにウィジェットを切り替えることができます。

$(".dp-icon").click(function (event) { 
    var visible = $(".has-dp").datepicker("widget").is(":visible"); 
    $(".has-dp").datepicker(visible ? "hide" : "show"); 
}) 
関連する問題