Templates 在属性内渲染模板

Templates 在属性内渲染模板,templates,knockout.js,data-binding,Templates,Knockout.js,Data Binding,我有一个模板,我正试图在引导弹出窗口中呈现,但当我执行下面的代码时,它只呈现[object object]。有没有可能让它以某种方式呈现完整的模板 <a data-toggle="popover" data-placement="top" data-trigger="hover" title="sometitle" data-bind="attr: { 'data-content': { template: { name: 'a-template', data: somedata} } }

我有一个模板,我正试图在引导弹出窗口中呈现,但当我执行下面的代码时,它只呈现
[object object]
。有没有可能让它以某种方式呈现完整的模板

<a data-toggle="popover" data-placement="top" data-trigger="hover" title="sometitle" data-bind="attr: { 'data-content': { template: { name: 'a-template', data: somedata} } }"></a>


谢谢你明智的建议和更好的智慧

您可以做的是,在计算字段中呈现模板,并将该字段指定给该数据内容属性。见下文:

指定模板

<script id="myTemplate" type="text/html">
        // Some HTML here
</script>

//这里有一些HTML
根据上面指定的模板生成计算字段

<script>
function myViewModel() {
    var self = this;
    self.templateField= ko.computed(function(){
        var temp = $("<div>");
        ko.applyBindingsToNode(temp[0], { template: { name: 'templateName', data: self } });
        var html = temp.html();
        temp.remove();
        return html;
    }, self);
}
</script>

函数myViewModel(){
var self=这个;
self.templateField=ko.computed(函数(){
变量温度=$(“”);
applybindingstoode(temp[0],{template:{name:'templateName',data:self}});
var html=temp.html();
移除温度();
返回html;
},自我);
}
现在使用上面在属性中创建的计算字段

<anyElement data-bind="attr: {'data-content': templateField}"/>

我为此编写了自己的助手,但这个答案可能很好,所以我接受了它。:)无论如何,谢谢你。