如何在 h:selectOneMenu 中更改值时在 ajax 请求中传递附加参数? [英] How to pass additional parameters in ajax request on change value in h:selectOneMenu?
本文介绍了如何在 h:selectOneMenu 中更改值时在 ajax 请求中传递附加参数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要将一些参数(在我的示例中为 id)传递给 f:ajax 侦听器方法,但我不知道如何传递.有人帮忙吗?
I need to pass some parameters (id in my example) to f:ajax listener method, but i don't know how. Anybody help ?
<h:form>
<!-- need to pass id value -->
<input type="hidden" name="id" id="id" value="#{id}"/>
<h:selectOneMenu value="#{visibility}">
<f:selectItems value="#{visibilities}" var="e" itemValue="#{e}" itemLabel="#{e.name}" />
<f:ajax event="valueChange" render="@form" execute="@form" listener="#{bean.updateVisibility}" />
</h:selectOneMenu>
</h:form>
豆子:
class Bean {
Integer id;
public void setId() {
this.id = id;
}
public void updateVisibility(AjaxBehaviorEvent event) {
// passed id
log.debug(id);
}
}
推荐答案
将参数传递给 f:ajax 是通过以下方式完成的:
Passing params to f:ajax is done by:
<f:ajax event="valueChange" render="@form" execute="@form" listener="#{bean.updateVisibility}">
<f:param value="#{id}" name="myId">
</f:ajax>
这篇关于如何在 h:selectOneMenu 中更改值时在 ajax 请求中传递附加参数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文