在JSF中,可以使用<h:inputHidden />标记呈现HTML隐藏值字段。 例如,
JSF标签…
<h:inputHidden value="some text" />
呈现此HTML代码...
<input type="hidden" name="random value" value="some text" />
JSF隐藏字段示例
一个JSF 2示例,它通过<h:inputHidden />标记呈现隐藏字段,并在JavaScript中访问该隐藏值。
1.托管豆
一个简单的托管bean,声明为“用户”。
package com.mkyong.form;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import java.io.Serializable;
@ManagedBean(name="user")
@SessionScoped
public class UserBean implements Serializable {
String answer = "I'm Hidden value!";
public String getAnswer() {
return answer;
}
public void setAnswer(String answer) {
this.answer = answer;
}
}
2.查看页面
通过“ h:inputHidden”标签渲染隐藏值,如果单击按钮,则通过JavaScript打印隐藏值。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<script type="text/javascript">
function printHiddenValue(){
alert(document.getElementById('myform:hiddenId').value);
}
</script>
</h:head>
<h:body>
<h1>JSF 2 hidden value example</h1>
<h:form id="myform">
<h:inputHidden value="#{user.answer}" id="hiddenId" />
<h:commandButton type="button" value="ClickMe" onclick="printHiddenValue()" />
</h:form>
</h:body>
</html>
3.演示
网址:http:// localhost:8080 / JavaServerFaces /
下载源代码
下载它– JSF-2-HiddenValue-Example.zip (9KB)
注意
您可能想知道如何将新的隐藏值传递给JSF中的后备bean 。