我们想知道是否有可能在facelets的javascript方法内获取托管bean属性值,或者将javascript值传递给托管bean属性而不使用隐藏标签?
当我们搜索它们时,我们看到的都是使用html隐藏标签或隐藏按钮的click事件的示例或解决方案。但是,当我们需要在ManagedBean和javascript之间进行大量数据交换时,此方法对我们而言无济于事,因为它需要大量隐藏标签。
您可以在地图中创建一个具有名称/值对的json对象,并将其作为请求参数发送。您可以使用p:remoteCommand
如下所示的javascript函数来调用它
function sendParams() {
passToJSFManagedBean ([ {
name : 'sno',
value : 1
},
{
name : 'name',
value : srikanth
}
]);
}
上面passToJSFManagedBean
应该是远程命令功能的名称,如下所示
<p:remoteCommand name="passToJSFManagedBean" id="passToJSFManagedBeancmd"
action="#{myBean.getParams}"
process="@this" />
您可以访问托管bean操作中传递的参数
public void getParams() {
String sno= FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap()
.get("sno");
//same way you can get name
}
希望这可以帮助
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句