2013-01-21 94 views
1

Helleu, 我想更改我的日期選擇器中某些單日的CSS,因爲它們不可用,我也想讓它們不可選。所以我有一個日期不可用的數組,並在beforeshowday上調用一個函數。如果我通過這樣的:Jquery datepicker更改CSS beforeshowday

return [true,"test"]; 

它是可選的和應用類測試的一天。背景顏色已更改,但邊框保持正常日的顏色!我也想在另一種顏色的邊界,如果可能的話也希望它不能被選擇。如果我返回false,那麼這個類不適用!

function highlightDays(date) { 
     var timestamp = new Date(Date.UTC(date.getFullYear(),date.getMonth(),date.getDate())); 
     var timestamp = timestamp/1000; 
     if ($.inArray(timestamp, prijzen) != -1) { 
       return [true,"test"]; 
     } 
    return [true, '']; 
} 

CSS:

td.test a { 
background: red !important; 
} 
+0

可以爲真或假的添加類。你的css規則要麼不夠具體,要麼沒有設置正確的元素。檢查瀏覽器控制檯中的元素並查看適用的規則和規則的順序。在jsfiddel.net中創建一個演示,展示什麼是或不在工作。還應該發佈代碼 – charlietfl

+0

在主題中添加代碼 –

+0

css不夠具體,並且datepicker標記中沒有''http://jsfiddle.net/Gpm3N/ – charlietfl

回答

2

下面是日期選擇爲不可選擇天生成的html與beforeShowDay

<td class=" ui-datepicker-unselectable ui-state-disabled bad"><span class="ui-state-default">2</span></td> 

添加eaxtra類bad您可以只使用日期選擇器類作爲更改CSS如下:

.ui-datepicker-unselectable.ui-state-disabled span.ui-state-default{ 
     color:red; border-color:#ffffff 
} 

您還可以得到更多的具體使用的類添加

DEMO:http://jsfiddle.net/Gpm3N/

+0

謝謝,我已經提前幾步了,因爲返回false被轉換爲紅色,包括邊框。但是,默認不可用(在當前日期之前)的日期也是紅色的。如何僅將數組中的日期變成紅色? –

+0

更改CSS規則是更具體的使用你的類然後 – charlietfl

+0

也許是一個(大)缺乏畝知識,但如何做到這一點? –

相關問題