2012-05-17 63 views
0

默認情況下,每當選擇日期時,jQuery UI日期選擇器都會重置日曆HTML。我希望能夠更改/添加日曆的元素(添加圖像,背景等),並讓它們在單擊日期後保留。當點擊日期時,我可以獲取jQuery UI日期選擇器元素不重置嗎?

例如,此腳本作爲內聯日期選擇器以第24個藍色的背景開始。當你點擊另一個日期(例如15日)時,HTML重置和藍色背景消失。點擊日期後,我希望它保持藍色。

<script> 

$(function(){ 
    $('#cal').datepicker({ 
     onSelect: function(dateText, inst) { 
      console.log(dateText); 
      // dont do anything else 
     } 
    }); 
    $('.ui-state-default:contains(24)').css('background-color','blue'); 
}); 

</script> 

<div id='cal'></div> 

演示:http://jsfiddle.net/DtvZM/

瞭解如何當您單擊某一天,24日由藍色變爲白色。我希望它留下來的藍色。

注意:這只是一個示例來演示問題,而不是我的實際代碼。

我正在尋找在修改jQuery UI小部件代碼之前是否有簡單的解決方案。

+0

您的目標是什麼?允許多個日期選擇在打開和關閉之間的日曆上粘貼? – j08691

+0

我的目標是添加/修改日曆的HTML,並在單擊日期後保留我的更改。像改變背景顏色,添加圖像,改變邊界等 –

+0

此外,沒有開幕式/閉幕式。日曆是內聯的(請參閱演示/代碼) –

回答

0

我已經解決了,這是不可能的,而無需修改UI日期選擇器代碼,這是我落得這樣做 -

在_selectDate方法,我改了一行:

if (inst.inline) 
    this._updateDatepicker(inst); 

if (inst.inline) { 
    inst.stay = true; 
    this._updateDatepicker(inst); 
    inst.stay = false; 
} 

然後在_updateDatepicker方法,我改變

inst.dpDiv.empty().append(this._generateHTML(inst)); 

if (!inst.stay) { 
    inst.dpDiv.empty().append(this._generateHTML(inst)); 
} 

現在,當被選擇的日期UI不會復位日曆HTML。

-1

你能不能將$('.ui-state-default:contains(24)').css('background-color','blue');裏面的onSelect回調?你仍然需要這樣做,以確保新選擇的24也得到藍色,我相信。

此外,我想我會添加類而不是實際樣式在CSS中。

$(function(){ 
    $('#cal').datepicker({ 
     onSelect: function(dateText, inst) { 
      console.log(dateText); 
      $('.ui-state-default:contains(24)').css('background-color','blue'); 
      // dont do anything else 
     } 
    }); 
}); 

編輯:我認爲你還需要重置所有各onSelect中的.ui狀態默認的元素,因此如果用戶第一次選秀「24」,它會變成藍色,但隨後回升「17 「我相信它仍然是藍色的,所以:

$(function(){ 
    $('#cal').datepicker({ 
     onSelect: function(dateText, inst) { 
      console.log(dateText); 
      $('.ui-state-default').css('background-color','transparent'); 
      $('.ui-state-default:contains(24)').css('background-color','blue'); 
      // dont do anything else 
     } 
    }); 
}); 
+0

嘿,謝謝,雖然我正在尋找一種方法來讓日曆不會重置。我的實現比這個例子複雜得多,並且每次點擊所有更改重新填充日曆都會非常複雜 –

相關問題