gpt4 book ai didi

java - 使用 JSF 获取 HTML 值

转载 作者:行者123 更新时间:2023-11-30 11:56:16 26 4
gpt4 key购买 nike

我有一个 javascript 可以编辑我的 jsf 页面中的隐藏字段:

<h:inputHidden id="data"  value="" />

当我点击“提交”时,我想获得由 javascript 修改的这个 HTML 字段的新值。我调查过

FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("data");

但这似乎只有在作为 <f:param/> 传入时才有效.有没有办法通过 bean 调用获取值?

最佳答案

这是生成的 HTML 输入字段的名称,它以通常的 HTTP/HTML 方式作为请求参数发送。请记住:JSF 在网络服务器上运行,生成 HTML/CSS/JS,网络服务器通过 HTTP 将其发送到网络浏览器,网络浏览器检索 HTML/CSS/JS 并显示/应用/执行它。在浏览器中右键单击页面,选择查看源代码,找到生成的 HTML 输入元素,您将看到类似如下内容:

<input type="hidden" id="formid:data" name="formid:data" />

哪里formid是父级的ID <form>由 JSF 生成 <h:form> .根据 HTML 规范,输入值在请求参数中作为名称=值对发送。

因此,对于上述情况,您应该使用

data = requestParameterMap.get("formid:data");

但是,您也可以将它绑定(bind)到 bean 属性。

<h:inputHidden value="#{bean.data}" />

这样它就可以作为 data 使用bean 的操作方法中的属性,而无需以低级方式处理请求参数。

关于java - 使用 JSF 获取 HTML 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4581831/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com