首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我们可以从javascript函数调用ftl宏吗

我们可以从javascript函数调用ftl宏吗
EN

Stack Overflow用户
提问于 2018-08-19 02:54:06
回答 1查看 371关注 0票数 0
代码语言:javascript
复制
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title> Java, Spring Boot, FreeMarker</title>
    <link href="/css/main.css" rel="stylesheet">
</head>
<script>
function myFunction() {
        <@test/>
}
</script>
<body>
    <h2>Java, Spring Boot, FreeMarker</h2>
     <form action="/search" method="post">
   Search : <input type="text" name="firstName" onkeyup="myFunction()" id = "fname"> 
   <input type="submit" value="Submit">
   </form>
        <div style="background-color:lightblue">
          <#macro test>
            <#list empList as emp>
            <div id="emp-data">
            <ul>
                <li>${emp}</li>
            </ul>
            </#list>
            </div>
        </#macro>
    <script src="/js/main.js"></script>
    </div>

</body>

当我运行这段代码时,我在浏览器控制台上得到一些错误:

(索引):60未捕获ReferenceError: myFunction未在HTMLInputElement.onkeyup ((索引):60) onkeyup @(索引):60-1小时前定义

在FreeMarker中有可能做这样的事情吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-19 07:38:36

在某种意义上你可以..。但它并不像你明显认为的那样。首先在服务器上解析所有的FreeMarker指令,比如<@test/>,然后在浏览器中运行结果输出。因此,在浏览器看来,function myFunction() { ... }直接在{ ... }内部包含HTML div-s,这是无效的JavaScript。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51911671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档