2012-07-16 83 views
1

在我的jsRender模板上調用render之後,它似乎被消耗,因此從DOM中刪除。這是令人沮喪的,因爲我有一個頁面,模板需要根據用戶交互進行多次渲染。jsRender模板在渲染後消失

console.log($('#tpl')); 
$('#container').html($('#tpl').render(json)); 
console.log($('#tpl')); 

第二的console.log是一個空數組,我不能再確認​​模板,使用DOM檢查和jsRender拋出異常存在:Uncaught JsRender Error: Unknown template: "#tpl" - 頁面必須重新加載重新注入模板到DOM中。

如何在渲染間持續保存jsRender模板?

+2

明顯的愚蠢問題:您的容器元素中聲明模板的腳本元素是?如果是這樣,當然調用容器上的.html()將刪除它...順便說一句,你也可以從字符串編譯模板。它不必在腳本元素... – BorisMoore 2012-07-16 21:18:57

+0

@BorisMoore啊。傻我。不知何故,我阻止了html()方法將排除'

0

今天我也有類似的問題,我有兩個目標div和兩個腳本塊模板的正文。我的問題是,我沒有正確關閉div元素標籤(太多的xaml),結果是第二個模板從未呈現,因爲它無法找到。

這裏有一個的jsfiddle顯示正確的使用(而不是/>自閉語法):

http://jsfiddle.net/jgoldsmith/XvvPC/

希望幫助別人。