[英]Grabbing an HTML value with JSF
我有一个javascript,可在jsf页面中编辑隐藏字段:
<h:inputHidden id="data" value="" />
当我点击“提交”时,我想获取由javascript修改的HTML字段的新值。 我调查了
FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("data");
但这似乎只有将它作为<f:param/>
传入时才有效。 有没有办法我可以通过bean调用获得价值?
这是生成的HTML输入字段的名称,该字段作为请求参数以通常的HTTP / HTML方式发送。 切记:JSF在Web服务器上运行,生成HTML / CSS / JS,Web服务器通过HTTP将其发送到Webbrowser,Webbrowser检索HTML / CSS / JS并显示/应用/执行它。 在浏览器中右键单击页面,选择“ 查看源代码” ,找到生成的HTML输入元素,您将看到类似以下内容:
<input type="hidden" id="formid:data" name="formid:data" />
其中formid
是由JSF <h:form>
生成的父<form>
的ID。 根据HTML规范,输入值将作为名称=值对在请求参数中发送。
因此,对于上述情况,您应该使用
data = requestParameterMap.get("formid:data");
但是,您也可以将其绑定到bean属性。
<h:inputHidden value="#{bean.data}" />
这样,它就可以作为bean的action方法中的data
属性使用,而无需麻烦地处理请求参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.