2016-12-16 99 views
1

我有一個HTML頁面,在變量schedule中有順序的十進制數,以秒爲單位。在jinja for循環中調用JavaScript函數

我的目的是創建一個函數,使用JavaScript/jQuery, 及時轉換所有這些數字,但我無法理解,我該如何調用我的函數來轉換所有項目?

<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> 

回答

3

Jinja代碼在您的服務器上運行。 Javascript運行在客戶端的瀏覽器上。

您不能在Jinja for-loop中調用javascript函數,因爲這兩件事發生在不同時間,不同機器上。

此場景的最佳方法是編寫一個Python函數,而不是Javascript函數,並將其作爲filter運行。您可以將custom filter添加到模板引擎。

+0

好的,謝謝Slezica,我強調。 – user8303487