我在JS中很新,並且遇到了使用來自javascript的託管bean的問題。從javascript運行jsf託管bean方法
我想通過h:inputHidden的方式來做到這一點,但仍然沒有正確的行爲。
<h:inputHidden id="hidden" value="#{bean.myVariable}" />
和我的腳本
<script type="text/javascript">
function func(){
var varFromBean = document.getElementById('myForm:myVariable').value;
....
}
</script>
我在錯誤的方式做的不便? 還有另外一種方法通過運行託管bean方法來定義JS變量?
在此先感謝!
編輯
我需要它豐富:日曆自定義。我需要允許用戶從特定時間段選擇日期。
<rich:calendar value="#{bean.selectedDate}"
isDayEnabled="disableDays" dayStyleClass="disabledDaysStyle"
firstWeekDay="1"/>
和完整的JavaScript這個是:
首先採用H:
<script type="text/javascript">
function disableDays(day){
var curDt = new Date();
if (curDt == undefined){
curDt = day.date.getDate;
}
var period = document.getElementById('form:period').value;
if ((curDt.getTime() + period) > day.date.getTime()) return true;
if (curDt.getTime() < (day.date.getTime())) return true;
else return false;
}
function disabledDaysStyle(day){
if (!disableDays(day)) return 'rich-calendar-boundary-dates';
}
</script>
我想補充一點,你也可以給h:inputText一個ID並在ID上使用jQuery方法。 – 2011-05-24 18:23:05
非常感謝,這可能會有所幫助。但我想知道除了使用h:inputText之外是否還有其他方法?這似乎是相當不自然的一個..? – ayscha 2011-05-24 20:43:31