2012-12-11 32 views
0

如何使用Knockout原生模板引擎爲給定模板和視圖模型生成綁定但未附加的html元素?使用原生Knockout模板引擎生成

我想實現類似於:

var template = "<div data-bind="text: name"></div>"; 
var viewModel = { name: "Hello" }; 
var domNode = ko.applyBindings(template, viewModel); 

$('body').append(domNode); 

回答

2

是的,你可以這樣做,但你應該DOM元素添加到頁面中,然後再申請綁定:

var template = "<div id='TemplateId' data-bind='text: name'></div>"; 
var viewModel = { name: "Hello" }; 

var test = $('body').append(template); 
var domElement = $('#TemplateId')[0]; 
ko.applyBindings(viewModel, domElement); 

這裏工作小提琴:http://jsfiddle.net/mq2GU/