[英]Call JavaScript function from JsRender
我有一個JsRender模板。 當模板渲染時,我想調用JavaScript函數來操作一些數據。
這是我的JsRender模板。
<tr class="template-download">
<td class="size">
<span>{{:size}}</span>
</td>
</tr>
現在我想將:size
值傳遞給JavaScript函數並獲取返回值。 所以我可以顯示返回值而不是:size
value。
我的JavaScript功能是
function getSize(size) {
var megabytes = size / (1024 * 1024);
return megabytes.toFixed(2) + "MB";
}
我怎樣才能做到這一點?
您可以使用輔助函數來完成此操作。 當您調用render時,您可以定義輔助函數並將其傳遞到模板中:
$("#tmpl").render(data, {
getSize: function(size) {
var megabytes = size / (1024 * 1024);
return megabytes.toFixed(2) + "MB";
}
});
然后,在您的模板中,您可以像這樣調用輔助函數:
<tr class="template-download">
<td class="size">
<span>{{:size}} {{:~getSize(size)}} </span>
</td>
</tr>
我對你的模板的使用方式做了一些假設,但這應該讓你順利。
我相信你必須使用輔助功能。 請參閱下面的兩個參考。 第二個是一個完全刷新的例子。
http://borismoore.github.io/jsrender/demos/step-by-step/09_helper-functions.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.