3

日付の選択に Jquery 日付ピッカーを使用していますが、デフォルトで特定の日付を選択できるようにしたいと考えています。

これが私のコードです:

var SelectDate=new Date(2013, 06,25 , 0, 0, 0, 0) ;
$("#OnwardTravelDate").datepicker({ 
      numberOfMonths: 2, 
      dateFormat: 'dd/mm/yy', 
      minDate: datePickMinDate_DT, 
      maxDate: datePickMaxDate_DT, 
      defaultDate: SelectDate 
});

ただし、日付セレクター コントロールは、今日の日付と日付 'selectDate' の両方を強調表示します。「selectDate」のみを強調表示したい

4

4 に答える 4

1

removeClass("ui-state-highlight");問題を解決する必要があります。

しかし、今日のハイライトを二度と表示したくない場合は、日付ピッカーのソース ( jquery.ui.datepicker.js) を取得して、次の行を削除する必要があります。

(printDate.getTime() == today.getTime() ? ' ui-state-highlight' : '') +

その後、コンパイルして使用します。

于 2013-06-07T06:44:49.960 に答える
1

Datepicker は、「今日」と「選択した日」に異なるクラスを割り当てます。

今日 - ui-state-highlight

選択された日 - ui-state-active

「.ui-datepicker .ui-state-highlight」のスタイルを削除またはオーバーライドするか、クラスを削除できます。

$("#OnwardTravelDate a.ui-state-highlight").removeClass("ui-state-highlight");
于 2013-06-07T06:35:44.983 に答える
1

EDIT1:ここから修正が見つかりましたが、コードを処理できません。

$( "#datepicker" ).datepicker({
   beforeShow: function(input, inst) {       
       window.setTimeout(function(){
           $(inst.dpDiv).find('.ui-state-highlight.ui-state-hover').removeClass('ui-state-highlight ui-state-hover')      
       },0)     
   },   
});

このJSFiddleを確認し、可能であれば、試しているコードで更新してください。

EDIT2:デフォルトの css.ui-datepicker-todaya.ui-state-highlightof を以下のものでオーバーライドします。

.ui-datepicker-today a.ui-state-highlight {
    border-color: #d3d3d3;
    background: #e6e6e6 url(/themeroller/images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
    color: #555555;    
}

このJSFiddleをチェックしてください

于 2013-06-07T06:47:35.853 に答える