您似乎误解了 Java 代码 ( ctrDashboard.getObjReporte1.get(indice)[0]
) 在服务器机器上运行而 JavaScript 代码 ( function cargarCategorias() { ... }
) 在 webbrowser 上下文中在客户端机器上运行。因此,您不能直接互换使用这两种语言。但是,了解JSF 框架的生命周期仍将帮助您实现目标。
因此,您的问题可以通过使用不同的工具来解决。例如,如果您想在页面上的初始 GET 请求时将一组数据预加载到 JS 上下文中,则需要在呈现页面时在 JS 中有一个元素数组:
<script type="text/javascript">
var valors = #{bean.valorsJson};
</script>
用bean方法为:
public String getValorsJson() {
return new Gson.toJson(valorList);
}
我建议为此目的使用 Gson 库,但您可以自由选择自己创建 JSON 对象的方式。
使用这种方法,您将valors
在 JS 函数中使用 JavaScript 变量进行遍历。
如果您想通过 AJAX 更新您的数组,可以采用类似的方法。
最后值得注意的是,这只是一个技巧,通常用于克服 JSF 应用程序设计中的缺陷。它可能表明您为所提到的工作使用了错误的框架,并且您未能在 JSF 中找到合适的工具,但鉴于目前披露的信息,这是不可能知道的。