我将日期存储在jsf数据表中。为此,我使用了一个文本框和一个复选框。选中复选框后,将弹出伊斯兰日历,而当未选中的格里高利历时会弹出。有一个按钮可将数据添加到数据表中。在某些情况下,用户还可以修改数据表,从数据表中选择数据后,用户可以更新数据。 从技术上讲,我使用2种方法,一种是弹出公历日历,另一种是伊斯兰日历,这是通过切换复选框来处理的。我要求如果在向数据表中添加一些数据的情况下,如果用户已经选中了该框并选择了回教日历,那么当用户修改相同数据时,更新方式必须显示已选中的复选框,并显示回教日历,反之亦然对于公历。当前,在修改数据时,默认情况下未选中此复选框,日期为公历。在数据表中插入数据时,必须按用户选择的方式进行工作。请在下面引用我的代码:
公历的方法:
<div id="pageContainer">
<div class="pageDisplayed" id="page1">
<p>blah blah</p>
</div>
<div class="pageHidden" id="page2">
<p>blah blah on a second page</p>
</div>
<div class="pageHidden" id="page3">
<p>blah blah on a third page</p>
</div>
</div>
<h2 id="main">pages :
<a href="#" onclick="showPages('1');this.style.color='red';">1</a>
<a href="#" onclick="showPages('2');this.style.color='red';">2</a>
<a href="#" onclick="showPages('3');this.style.color='red';">3</a>
</h2>
切换阳历和伊斯兰历法的方法:
function setGregorianCal(){
var classtype = '.calenderType';
$(classtype).calendarsPicker($.extend({
localNumbers: true,
dateFormat:'dd/mm/yyyy'
}
));
}
JSF:
function toggleCalender(obj,target,widgetVar){
var objId = obj.id;
var checkVal= PrimeFaces.widgets[widgetVar].input.is(':checked');
var lastIndex = objId.lastIndexOf(":");
var initialId = objId.slice(0, lastIndex);
var targetId= '#'+initialId+':'+target;
var finalID = targetId.replace(/:/g, '\\:');
if(checkVal){
$(finalID).calendarsPicker('destroy');
$(finalID).calendarsPicker($.extend({
calendar: $.calendars.instance('UmmAlQura'),
localNumbers: true,
dateFormat:'dd/mm/yyyy'
},
$.calendarsPicker.regionalOptions['ar']
));
}else{
$(finalID).calendarsPicker('destroy');
$(finalID).calendarsPicker($.extend({
localNumbers: true,
dateFormat:'dd/mm/yyyy'
}
));
}
}
在上面的代码中,我需要onfocus方法中是否有其他方法(按照我的方法)。如果您使用其他方法,请还原。