在 visualforce 中不使用 apex:param 将参数从页面传递到控制器

Pass a parameter from page to controller without apex:param in visualforce

我正在尝试将参数从 Visualforce 页面传递到 apex:actionfunction 中的控制器,但是我面临一个奇怪的困境。

apex:param 与动作函数一起工作的唯一方法是它是否有重新渲染属性。不幸的是我不能使用重新渲染,因为我在页面上也有一个 apex:inputfile;如果存在重新渲染属性,则会导致错误。

关于如何在不使用 apex:param 的情况下将参数传递给控制器​​的任何想法。

如果您对不使用 apex:param 如此挑剔,那么您应该考虑使用 JavaScript Remoting 将参数从 Visualforce 传递到 Apex。

否则,如果您可以使用 apex:param 但问题仅在于 apex:inputFile 标签,那么您应该使用 apex:actionRegion 标签。

我没有发布完整的代码,只是在下面给你参考。希望以下链接对您有所帮助:

Passing a value from Visualforce Page to Controller

apex:actionRegion - Visualforce 开发人员指南

JavaScript Remoting - Visualforce Developer Guide