我們的項目使用JSF1.2,Icefaces 1.8.2,jQuery UI組件datepicker(版本1.8.14)。問題與IE7(火狐很好)。以下順序會出現問題:選擇一個日期(例如,今天的幾天)。請注意,我們設置了從1991年到2012年的年份範圍。我們的業務邏輯是在JSF後臺打印文檔時使用該日期(在代碼中稱爲dateOfStudy)作爲標題,一旦完成,我將日曆inputext日期字段清空爲空。現在點擊datepicker圖標,當年顯示2011年,選擇任何一個月(例如回到Auguest,2011),問題發生在這裏:年份將改爲1991年,不能保持在2011年。jQuery datepicker在選擇月份時更改,IE7
如果我不觸摸該日期字段,則不會發生問題(不要清除,保留舊日期)。問題仍然會出現,即使我只是通過CSS將日期字體更改爲其他顏色(似乎只要我觸摸該字段,datepicker就會搞砸了)。如果您今天點擊一次,或關閉日期選擇器,則不會再發生問題,請再次打開。
似乎datepick需要一些初始化後我清除日期?
我附上了一些代碼。我有trid方法/選項像setDate,onChangeMonthYear,beforShowDay,無法解決。任何幫助表示讚賞!
<script type="text/javascript">
var jq = jQuery.noConflict();
jq(document).ready(function() {
jq("[id$=fmv]").live('click', function() {
jq(this).datepicker({
showOn : 'focus',
changeMonth : true,
changeYear : true,
dateFormat : 'mm/dd/yy',
yearRange : '-20:+1',
showButtonPanel : true,
closeText : 'Close'
}).focus();
});
});
</script>
<ice:inputText id="fmv"
style="background-image:url ('../../../jquery/images/calendar1.png');
background-repeat:no-repeat;background-position:right;"
value="#{pItem.dateOfStudy}"
validator="#{pItem.validate}"
partialSubmit="true"
name="fmv"
valueChangeListener="#{pItem.dateChangeListener}">
</ice:inputText>