Javascript 使用knockout在html上打印地图
我有一个可观察的“页面”,其结构如下:Javascript 使用knockout在html上打印地图,javascript,knockout.js,Javascript,Knockout.js,我有一个可观察的“页面”,其结构如下: "page": { "pageId": 1, "properties": { "name": "abc.png", "values": { "LastEditor": "user", "Text": "Some content" } } } 现在,我必须在html页面的表格中打印“值”映射,如: Name | Value ----------- | ------------
"page":
{
"pageId": 1,
"properties": {
"name": "abc.png",
"values": {
"LastEditor": "user",
"Text": "Some content"
}
}
}
现在,我必须在html页面的表格中打印“值”映射,如:
Name | Value
----------- | ------------
LastEditor | user
Text | Some content
“值”中的内容是动态的。因此,我无法硬编码LastEditor和文本并打印它们的值
有人能帮忙吗 使用循环获取这些键/值对
var json={
“第页”:{
“pageId”:1,
“财产”:{
“名称”:“abc.png”,
“价值观”:{
“LastEditor”:“用户”,
“文本”:“某些内容”
}
}
}
};
函数ViewModel(){
var self=这个;
self.data=ko.observearray();
for(json.page.properties.values中的var键){
self.data.push({
钥匙:钥匙,
value:json.page.properties.values[key]
});
}
}
应用绑定(新的ViewModel())代码>
名称
价值
您可以使用对象上的Object.keys
来获取属性数组。从这里开始,您只需要在其上运行一个foreach
,并在DOM上写入值
请参见下面的代码段:
var obj={
“价值观”:{
“LastEditor”:“用户”,
“文本”:“部分内容”,
“某些其他属性”:“某些值”
}
};
var模型=功能(obj){
var self=这个;
自我价值=可观察到的价值(目标价值);
}
ko.应用绑定(新模型(obj))代码>
表格{
边框:1px纯黑;
}
表td{
填充:3倍;
边框:1px点黑色;
}
名称
价值
为什么要投否决票?