2015-09-09 36 views
0

我一直在嘗試添加一個類爲可選日期。以下是添加一個類datepicker類不選擇時添加

$('a.ui-state-default').addClass('myClass'); 
$('a.ui-state-highlight').removeClass('myClass'); 

$(".myClass").attr("style", "background:"+background_button+" !important; color:"+text_button+" !important;"); 

這工作正常。

但是,當我在datepicker中選擇一個日期時,它又恢復爲正常樣式,並且ui-state-default的添加類不會出現。

+0

試圖爲同一 –

+1

提供的jsfiddle添加該類時......和你是什麼什麼時候選擇一個日期 –

+0

css()爲什麼。 – user3378428

回答

0

問題是因爲datepicker的dom被重繪很多次,因爲重繪之後只有一次應用樣式會丟失。

的解決方案是使用CSS類和beforeShowDay回調樣式的日期

jQuery(function($) { 
 
    var array = []; 
 
    $('#dp').datepicker({ 
 
    dateFormat: 'dd M yy', 
 
    beforeShowDay: function(dt) { 
 
     return [1, 'my-style-class'] 
 
    } 
 
    }) 
 
});
.my-style-class a.ui-state-default:not(.ui-state-highlight) { 
 
    color: green; 
 
}
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js"></script> 
 
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/redmond/jquery-ui.css"> 
 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.js"></script> 
 

 
<div id="dp"></div>

+0

http://jsfiddle.net/arunpjohny/ o7qew84a/ –

+0

當我想動態添加樣式到類,它不工作,如果它是一個靜態類,它會很好。 (「。myClass a.ui-state-default」)。attr(「style」,「background:」+ background_button +「!important; color:」+ text_button +「!important;」); – user3378428