Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Call JavaScript function in jinja for loop [duplicate]

I have an HTML page, In the variable schedule has sequential decimal number in seconds.

My purpose is create a function to convert all these numbers in time using JavaScript/jQuery, but i could not understand, how can I invoke my function to convert all items?

<html>
    <body>
        // Jinja code

        {% for item in schedule %}

        {{ convertDecimal_to_time(item.someDecimal) }}

        {% endfor %}

    </body>
</html>

<script>
    covertdecimal_to_time(input_number){
        .....
        return time;
    }
</script>
like image 424
user8303487 Avatar asked Mar 27 '26 20:03

user8303487


1 Answers

The Jinja code runs on your server. The Javascript runs on the client's browser.

You can't call a javascript function in a Jinja for-loop, because those two things happen at completely different times, on different machines.

The best approach for this scenario is to write a Python function, not a Javascript function, and run it as a filter. You can add a custom filter to the template engine.

like image 194
slezica Avatar answered Mar 29 '26 09:03

slezica