我有一个h:inputHidden
字段,其值需要通过ajax调用进行更新。我尝试在f:ajax
元素中使用h:inputHidden
标记,但它不起作用(在<f:ajax>
标记中提示您无法使用h:inputHidden
时出错。
<h:panelGroup id="datesSelectPanel" styleClass="form-group">
<div class="col-md-8">
<div id="dateSelector" class="col-md-4"></div>
<div class="col-md-offset-1 col-md-1">
<h:commandLink id="selectedDates" styleClass="btn default" style="margin: 90px 0 0 0;">
<i class="fa fa-forward"></i>
<p:ajax process="pickerHiddenPanel" onstart="loadSelectedDates()"/>
</h:commandLink>
</div>
<h:panelGroup id="dateSelectPanel" class="col-md-4">
<h:panelGroup id="pickerHiddenPanel" styleClass="ulSelectedDatesHidden">
<h:inputText id="sDates" value="#{managedBean.selectedDates}" style="display:none;" />
</h:panelGroup>
<ul style="width: 150px; height: 220px;" class="pull-left" id="ulSelectedDates"></ul>
DOM元素ID
所以这就是发生的事情,
我从多日期选择器(Bootstrap)中选择多个日期,然后单击按钮以填充日历旁边的框。完成后,#{managedBean.selectedDates}
bean值未按预期更新。我使用Javascript来填充列表,使用函数loadSelectedDates()
将<li>
元素添加到<ul>
。
我需要捕获托管bean中的日期选择。有办法解决这个问题吗?感谢帮助。
P.S:我在另一篇文章中建议使用了h:inputText
也没有用,这就是为什么你看到h:inputText
而不是h:inputHidden
答案 0 :(得分:0)
根据发布的代码:
<h:inputText id="sDates"/>
的值
转换ConverterException
的值时会抛出<h:inputText id="sDates"/>