我一直在寻找答案,但还没有找到答案......
我想将变量值FROM javascript传递给bean。是不是可以在不进入xhtml的情况下做到这一点?我想我只是愚蠢,但我还没有找到答案。有人可以给我一个真正的假人指南吗? :)
让我们说,我想将javascript变量X值发送到名为Bean" user"在bean中我有一个字符串的getter和setter。
假人导游,拜托。我似乎没有得到这个...老狗和新技巧,你知道:D
如果必须通过XHTML完成,我想使用p:remotecommand。
编辑:语录:"这个问题可能已经有了答案:"
也许是这样,但我仍然不理解它。我猜愚蠢...... :(
答案 0 :(得分:0)
阿纳托利是对的:Primefaces'<p:remoteCommand>
对此非常好。
在xhtml页面的任何位置声明remoteCommand,例如:
<p:remoteCommand name="SetMyStrings" actionListener="#{myBean.setMyStrings}" />
从您的Javascript中,您现在可以使用
调用remoteCommandSetMyStrings([{ name: "string1", value: "Hello"}, {name="string2", value: "World"}]);
(或者从你的javascript变量中获取字符串值而不是硬编码)
最后,你需要在烘焙bean中做的就是收集 RequestParameter
地图中的值:
public void setMyStrings(){
Map<String, String> requestParamMap = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap();
String string1 = requestParamMap.get("string1"); //Hello
String string2 = requestParamMap.get("string2"); //World
}