0

是否可以通过 FacesContext 访问 selectOneMenu 中的值?

4

1 回答 1

3

HTML 输入元素的值通常作为 HTTP 请求参数提交,输入字段名称为请求参数名称。因此,如果您知道 JSF 生成的 HTML 输入字段名称,那么您将能够从请求参数映射中获取它。

例如

<h:form id="formId">
    <h:selectOneMenu id="menuId">
        ...

String menuValue = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("formId:menuId");
// ...

然而,这种方法的有用性是非常值得怀疑的。value您通常通过组件的属性直接将输入值绑定到支持 bean 属性,UIInput以便 JSF 将完成收集请求参数、转换/验证它们和更新模型值的所有工作。

于 2012-05-10T17:27:22.783 回答