javascript var 未正确传递给支持 bean

标签 javascript ajax jsf ajax4jsf

我的这段代码无法正常工作。我定义了 fieldToStore。我可以提醒它,我可以在 firebug 控制台中看到它的值,但是当它传递给 myBean 时,如果是 String 值,它总是未定义的,如果是 bool 值,则它总是 undefined 。 有什么想法吗?

<a4j:commandButton id="bt1" action="#{myBean.doSomething}" onclick="fieldToStore=false;saveFieldState();">
</a4j:commandButton>        
<a4j:jsFunction name="saveFieldState" action="#{myBean.dummyAction}" />
   <a4j:actionparam name="fieldToStore" assignTo="#{myBean.fieldToStore}" />
</a4j:jsFunction>

我的预期是,在我点击 bt1 之后,根据 javascript var fieldToStore,myBean.fieldToStore 的值为 false。

最佳答案

您正在使用 <a4j:actionParam> , 即 a combination of f:param and f:actionListener分配它的 value属性为 assignTo 中的属性.

您想使用 <a4j:param>反而。看这个example in the official docs

关于javascript var 未正确传递给支持 bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11333532/

相关文章:

ajax - Grails SubmitRemote 'undefined'错误

PHP 检测谁打开了页面

javascript - 如何在 Javascript 和 JSF 中使用数据库?

java - 具有多个范围的托管 Bean

javascript - AngularJS 图表文件问题

javascript - 向下滚动时变为固定位置后,回到向上滚动时的绝对定位

javascript - Highcharts:共享工具提示格式化程序 this.points[i]

javascript - 如果另一个元素可见,则 jQuery 切换类

c# - HTMLAgilityPack 加载 AJAX 内容以进行抓取

java - 使用 action 属性时,文件扩展名更改为 ".jsf"