我可以使用knockout执行这样的绑定吗
<div data-bind="attr:{id: id,'data-plugin-options': options}">
我的模型看起来像
var model = {
id: id,
options: {
headerText: 'Group',
headerStyle: 'groupWithBorders'
}
};
ko.applybindings(model);
目前,在绑定发生后,我在data-plugin-options上获得[object object]。
答案 0 :(得分:2)
Knockout使用toString()将attr绑定中的对象转换为字符串。您可以重载该函数以输出所需的结果:
var model = {
id: id,
options: {
headerText: 'Group',
headerStyle: 'groupWithBorders',
toString: function() {
return JSON.stringify(this);
}
}
};
答案 1 :(得分:0)
你可以这样做:
<div data-bind="attr:{id: id,'data-plugin-options': options.headerText}">
var model = {
id: 'id',
options: {
headerText: 'Group',
headerStyle: 'groupWithBorders'
}
};
ko.applyBindings(model);
你会看到这个结果:
<div data-bind="attr:{id: id,'data-plugin-options': options.headerText}" id="id" data-plugin-options="Group">
</div>
<强> See fiddle 强>
我希望它有所帮助。