使用JavaScript设置f:param值

有可能做到:

jsf代码(伪):

...   ... 

我的意思是方法,当用JS设置

这是不好的做法吗?

感谢帮助。

您需要使用a4j的commandButtonactionParam才能将动态参数传递回服务器。

此外,您需要在bean上接收param值的属性。

例:

    

这里myBean.myBeanArg将接收javascript函数getTheValue()返回的值。

注意noEscape="true"属性。 这是必需的,因为否则内部数据将包含在单引号中并进行转义,从而导致无法执行javascript。 如文档中所述:

可以在“value”属性中使用JavaScript表达式或函数。 在这种情况下,“noEscape”属性应设置为“true”。 此JavaScript调用的结果将作为的值发送到服务器。

是服务器端的东西,而javascript是客户端。 所以你不能

你可以使用ajax a4j来做到这一点,

不,你不能。 例如,您可以更改链接的属性,并在服务器端的操作方法中获取此属性。

或者,您可以使用链接到bean中的属性的隐藏输入字段。