【问题标题】:How to pass a JS function to frontend as JSON property in JSF?如何将 JS 函数作为 JSF 中的 JSON 属性传递给前端?
【发布时间】:2015-03-11 23:58:53
【问题描述】:

我正在尝试将 Javascript 函数作为 primefaces 中的 JSONObject 元素传递。

在我的 Java 支持 bean 中,我有:

JSONObject serie = new JSONObject();
serie.put("name", "Single data serie");
...
serie.put( <other JSON fields and objects> )
...
serie.put("method", "function() { return '1'; }");

然后我将对象 serie 发送到前端并在我的 Javascript 中使用该 JSONObject。 Everyting 工作正常,除了“方法”被视为字符串,而不是函数。

有没有办法将函数作为函数而不是字符串发送?

我用的是

org.primefaces.json.JSONObject

类。我知道,还有课

org.json.JSONObject

但在我看来是一样的。

问候,

马特乌斯

【问题讨论】:

标签: java javascript json jsf primefaces


【解决方案1】:

听起来设计很糟糕,但您可能正在寻找eval()

一些代码示例:

eval("function x() { return '1'; } x();"); 

打印"1"

【讨论】:

  • 嗨。您确定这将与 json 属性一起使用吗?我在这里看到的只是 JSON 属性值的替换:"method": "function() { ...}""method": "eval(\"function....\")" 从字面上看,这两个属性都是字符串。问候,
  • 你好。我解决了,请参阅我对原始问题的评论。
猜你喜欢
  • 1970-01-01
  • 2017-02-07
  • 2018-04-02
  • 2020-02-28
  • 2022-07-28
  • 1970-01-01
相关资源
最近更新 更多