<h:selectOneMenu id="dropdownDevice"
value="#{skinningBean.currentDevice}" converter="SkinConverter">
<f:selectItems value="#{skinningBean.myDevicesSI}" var="c"
itemValue="#{c}" />
<f:ajax event="change" render="preview" />
</h:selectOneMenu>
是否可以在此下拉菜单中重新加载整个页面?我需要这个,因为我还需要在选择其他设备时重新加载javascript。
答案 0 :(得分:11)
您不清楚是否要同步或异步执行它。
如果是异步,请指定@all
的渲染。
<f:ajax ... render="@all" />
如果同步,请通过JS <f:ajax>
调用替换form.submit()
。
<h:selectOneMenu ... onchange="this.form.submit()">
答案 1 :(得分:1)
您可以通过在render="@all"
代码中设置f:ajax
属性来完成此操作:
<f:ajax render="@all" />
您可以删除event="change"
,因为它是默认值。