我有一个jsff页面。
在此,我定义了一个<af:form id="f1"></af:form>
如何在此表单中添加参数到操作属性?
我在这个表单中使用了<f:param ... />
标记:
<af:form id="f1">
<f:param value="#{param.id}" name="id"/>
...
</af:form>
但它不起作用。
答案 0 :(得分:0)
如果要传递参数。在commandButton / commandLink中执行此操作。否则,您可以将属性传递给表单。
<af:commandLink text="click here"
action="#{testbean.buttonClicked}" >
<f:param name="et1" value="etc"/>
</af:commandLink>
FacesContext facesContext= FacesContext.getCurrentInstance();
Map requestMap=facesContext.getExternalContext().getRequestParameterMap();
或
<af:form id="f1" binding="#{testbean.form}">
<f:attribute name="et1" value="etc"/>
行动方法
String value2=(String)form.getAttributes().get("et1");
或者最好还是使用
<强> AF:setPropertyListener 强>
<af:commandLink text="click here"
action="#{testbean.buttonClicked}" >
<af:setPropertyListener type="action" from="etc" to="#{et1}"/>
</af:commandLink>
String value3=(String)evaluateEL("#{et1}");
答案 1 :(得分:0)
在表单中放置一个按钮或链接或...并使用:
<af:setActionListener from="value" to="#{...Scope.yourParam}"/>
“...”可以是SessionScope,pageFlowScope等