Angular ブートストラップ コレクションで datepicker を使用しています。( http://angular-ui.github.io/bootstrap/ )。
日付ピッカーで個々の日付を無効にできることはわかっていますが、このブログ投稿(jQuery を使用)に示されているように、日付ピッカー全体を無効にする必要があります。
Angular を使用して datepicker 全体を無効にするにはどうすればよいですか?
Angular ブートストラップ コレクションで datepicker を使用しています。( http://angular-ui.github.io/bootstrap/ )。
日付ピッカーで個々の日付を無効にできることはわかっていますが、このブログ投稿(jQuery を使用)に示されているように、日付ピッカー全体を無効にする必要があります。
Angular を使用して datepicker 全体を無効にするにはどうすればよいですか?
これを直接行う方法はないようです。しかし、 https://github.com/angular-ui/bootstrap/issues/1113で説明されているいくつかの回避策があります
代わりに、datepicker が無効になっているかどうかを示すスコープ変数を作成し、無効になっている場合は、datepicker をまったく非表示にして、おしゃれなコンテナーに datepicker のモデルを表示することができます。
もう 1 つの方法は、date-disabled を true に設定し、入力を無効にして、show-button-bar を false に設定することです。
しかし、繰り返しますが...これらは回避策です...必要に応じて、datepicker-disableのようなカスタムディレクティブにラップすることで、見栄えを良くすることができます。または、好きな jquery datepicker を angular ディレクティブにラップします。これはもう少し手間がかかります。
ここでうまくいく解決策を見つけました:bradrisseのコメントを見てください
この CSS の使用:
.disabled-picker { cursor: not-allowed; } .disabled-picker:before { content: "";
z-index: 1;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(255, 255, 255, 0.8); }
そしてHTML:
<div ng-class="{'disabled-picker': anyBoolHere }">
<datetimepicker ng-model="data.date"></datetimepicker>
トリックを行います。