0
我在jsf页面的javascript中有一个变量,我想在托管bean中获取这个变量。 你有什么想法我可以做到吗?将参数从javascript传递到managedbean
我在jsf页面的javascript中有一个变量,我想在托管bean中获取这个变量。 你有什么想法我可以做到吗?将参数从javascript传递到managedbean
这可能不是最好的解决办法,但我已经做了,在过去类似的东西:
在您的托管bean(的.java),您可以通过访问您的前端元素:
Map<String, String> parameters = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap();
for (Entry<String, String> formElement : parameters.entrySet()) {
String elementName = formElement.getKey();
if (elementName != null && //some other qualifier, for instance if the elementName starts with some pre-defined value) {
String elementValue = formElement.getValue();
//Set the variable in the backend
}
}
而在你的.js,你可以为变量,你想从你的托管bean访问创建一个元素:
formElement = document.createElement('input');
formElement.type = 'hidden';
formElement.name = someName;
formElement.id = someId;
$(document.getElementById('spanId or divId')).append(formElement);
有某些特殊的方法可以做到这一点,但如果你表现出精确的情况下潜伏在ÿ我们的应用程序可能有完全不同的方式来实现这一点,根本不使用单一的JavaScript函数。 – Tiny 2014-12-27 18:48:11