2016-07-26 115 views
0

我正在使用jQuery Datepicker(jQuery 1.11.3/jQuery UI 1.11.4>我被綁定到這些版本,無法以任何方式更改或更改它們)。jQuery Datepicker - 今天不要突出顯示

開箱,jQuery的日期選擇器今天突出了以下方法:

<td class="ui-datepicker-days-cell-over ui-datepicker-current-day ui-datepicker-today"> <a class="ui-state-default ui-state-highlight ui-state-active" href="#" tabindex="144">26</a> </td> 

現在我想爲了防止這種行爲擺脫UI狀態高亮類的。

我搜索在網絡上無數的暗示,所有這些都或多或少相同這樣的(包括超時,.find()等):

beforeShow: 
function (textbox, instance) { 
setTimeout(
function() { 
$(
"#ui-datepicker-div td.ui-datepicker-today a.ui-state-highlight").removeClass('ui-state-highlight'); 
}, 300 
); 
//settimeout function end 
} 

但是所有這些解決方案都沒有加工。

有沒有人可以解決這個問題?

+0

添加該取消高亮一些CSS規則? –

+0

不,這不是一個解決方案,因爲那樣你就不能選擇(=高亮)「今天」了。我已經試過 –

回答

3

爲了確保jquery-ui在顯示datepicker後不添加類,您可以在呈現datepicker後運行此代碼。

$('#ui-datepicker-div').datepicker({ 
    //options 
}) 
.find('a.ui-state-highlight') 
.removeClass('ui-state-highlight'); 
+0

PURE GENIUS !!!!!非常感謝你!這是互聯網上唯一的解決方案,沒有任何陰暗的黑客,setTimeouts或渲染電影,它的工作無懈可擊!再次感謝你。由於大量的脂肪酶正在尋找這種功能,我想這個答案變得更受歡迎。 –

0

爲了使這項工作,我不得不刪除兩個班,並給予一定的超時,這是我的解決方案:

setTimeout(function(){ 
        $("#embeded_calendar").datepicker().find('.ui-stateactive').removeClass('ui-state-active'); 
        $("#embeded_calendar").datepicker().find('.ui-datepicker-today').removeClass('ui-datepicker-today'); 
      },10) 
相關問題