2011-12-19 22 views
0

我使用基石js和jQuery模板。所以我想用名字和日期來渲染一些模型。問題在Date字段中。我用我的語言自然形式編寫了打印日期的函數,並且希望在模板中使用它。在jQuery模板中使用項目的功能

我已經寫了這個模板:

<script type="text/html" id="item-template"> 
    ${Name} (${Date().toRussianDateString()}) 
</script> 

但recived錯誤Uncaught SyntaxError: Unexpected token)

所以我發現這個解決方案:

<script type="text/html" id="item-template"> 
    ${Name} (${$data.Date().toRussianDateString()}) 
</script> 
使用$數據和$項變量

。正確的解決方案?我可以在不使用$ date和$ item的情況下編寫此模板嗎?

Thanx。

+0

是適合您的解決方案嗎? – 2011-12-19 08:58:37

+0

這個解決方案效果很好,但對我來說它似乎是「糟糕的氣味」 – Yavanosta 2011-12-19 21:29:24

回答

0

這是有點骯髒,因爲你混合了死水在jquery.tmpl引擎與原生KO模板。

如果你能使用最新版本的KO的,你可以這樣寫:

<div data-bind="foreach: items"> 
    $data.Name ($data.Date().toRussianDateString()) 
</div> 

注意,是行內;您不需要任何單獨的腳本塊或命名模板。

+0

爲什麼我在KO網站找不到它?這段代碼看起來非常漂亮乾淨。謝謝! – Yavanosta 2011-12-21 14:55:58

+0

KO的最新版本在前幾天正式發佈。看看這裏:KO 2.0:http://blog.stevensanderson.com/2011/12/21/knockout-2-0-0-released/ – 2011-12-21 23:59:50