繁体   English   中英

使用JSF捕获HTML值

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM