[英]Calling Java class's method from javascript in a freemarker template
[英]Java method doesnt execute from Javascript using Freemarker
我试图对我使用Freemarker从Java代码获得的对象执行Javascript中的Java方法。 我有类型为“ Settinga”的java对象“ actual_id”和方法“ setActual_id”,该方法仅设置对象的一个属性。 这是我对js中的方法的调用:
var idd = ${actual_id}.setActual_id(variable);
而不是在html代码中执行,我看到了:
javaclassurl$Settinga@5beccfce.setActual_id(variable);
并且有一个错误:myFunction未在HTMLButtonElement.onclick上定义
为什么不执行? 以下调用按预期执行,但我需要包含变量:
var idd = "${actual_id.setActual_id("aaa01dd3-abe4-4d50-a69e-62b04199b7c5")}";
我了解Freemarker表达式会在页面生成过程中进行翻译,当我只使用字符串时,它很容易解释并可以执行,但是在页面生成过程中,我想包含在调用中的变量是未知的,因此需要以其他方式执行...
因为它的工作方式是这样的:FreeMarker在服务器上执行,将所有${...}
解析为纯文本,然后客户端的浏览器获取生成的HTML并执行JavaScript。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.