2011-09-03 42 views
1

我想知道如何使用_.template渲染jQuery對象。如何渲染帶有下劃線模板的jQuery對象

$(function(){ 
    var $el = $('p'); 
    $el.html('Hello'); 

    var context = { 
     'elem' : $el 
    } 

    var tmpl = $('#tmpl').html(); 
    var result = _.template(tmpl)(context); 

    $('div').html(result); 
}); 

http://jsfiddle.net/bDVeV/

這返回[對象的對象。我讀取獲取外部html,你可以做$ el [0] .outerHTML,但是然後我失去了我看到的點擊事件。

回答

0

$ el是一個對象,而不是一個字符串,因此您必須將數據轉換爲json格式。 這將工作:

var context = { 
     'elem' : $el.html() 
    } 

和p標籤插入到DOM

+0

這隻會放在「你好」,而不是「

你好

」後不要忘記點擊事件綁定。 – Pickels

+0

好吧,假設這是一個人爲的例子,你已經使用outterHTML解決了你的問題。解決辦法是在將模板添加到DOM後綁定您的點擊事件*。 –