How to Call Javascript Function from Freemarker?

I have some basic JavaScript function:

<script type="text/javascript">
    function someTestFunction(param1, param2) {
        //do something
    }
</script>

and Freemarker code:

<#if something==somethingElse>
    // call: someTestFunction(something, 123)
<#else>
    // call: someTestFunction(somethingElse, 345)
</#if>

my question is: Is it possible, and if so, how to call someTestFunction() from inside freemarker tags?

1 Answer

Freemarker is a java templating language, meaning it is executed on the server. javascript is executed on the client (user's browser). You cannot call a javascript function from the java server in this manner.

You could do something like:

<script>
<#if something==somethingElse>
    someTestFunction(something, 123);
<#else>
     someTestFunction(somethingElse, 345);
</#if>
</script>

which means the javascript wll be executed on the client side depending on what server variable is set.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

James H. Sterling

James H. Sterling

Environmental Science & Climate Journalist

James Sterling reports on renewable energy developments, climate policy, ecological conservation, and green tech innovations around the globe.

Share this article
Twitter Facebook Pinterest