属性名称未知的Mustache模板
Mustache template with unknown properties name
是否可以为具有未知属性的对象数组创建模板?
var objs: [{
propA: 'A',
propB: 'B',
propC: 'A',
propD: 'B'
}];
模板可以是:
<ul>
<li>{{property_name}}: {{property_value}}</li>
</ul>
您首先应该以正确的方式定义对象数组:
var myarray=[{propA:'valueA'},{propB:'valueB'}]
然后通过索引或任何迭代方法引用每个对象
<ul>
<li>{{Object.keys(myarray[0])}}:{{myarray[0]['propA']}}</li>
</ul>
以下内容可以让您了解如何获取密钥和值:
HTML
<script type="text/html" id="tmpl">
{{#objs}}
<div>
{{key}}: {{value}}
</div>
{{/objs}}
</script>
JavaScript
$(document).ready(function () {
var output = $("#output");
var template = $("#tmpl").html();
var objs = [{
propA: 'A',
propB: 'B',
propC: 'C',
propD: 'D'
}];
var mustacheFormattedData = {
'objs': []
};
for (var prop in objs[0]) {
if (objs[0].hasOwnProperty(prop)) {
mustacheFormattedData['objs'].push({
'key': prop,
'value': objs[0][prop]
});
}
}
var html = Mustache.render(template, mustacheFormattedData);
output.append(html);
});
演示:http://jsfiddle.net/moogs/qK5NT/83/
相关文章:
- 如何配置browserfy与Karma使用转换Stringify为Mustache模板
- 数据绑定到Mustache模板?(最好干净简单)
- 使用Webpack加载Mustache模板
- 如何为具有嵌套对象的 JSON 数据创建 Mustache 模板
- 重用另一个模板中的 Mustache 模板,如果两者都在一个 html 文件中定义
- 属性名称未知的Mustache模板
- 在Mustache模板中嵌入一个Twitter共享按钮(包含JS和所有内容)
- 在视图之间传递Mustache模板数据
- Scala:如何在Finatra中的Mustache模板中包含JS脚本
- 如何获取Mustache模板的所有可用变量
- 如何使用Mustache模板将选项添加到下拉列表中
- 使用jQuerygetJSON将JSON数据的嵌套对象返回到Mustache模板
- 使用对象数组的Mustache模板
- 如何在Mustache模板中处理IF语句
- 在mustache模板中对点击事件执行函数
- 如何在js中从mustache模板中读取动态数据id值
- 在knockout.js中使用mustache模板
- 如何在Mustache模板中使用jQuery内置函数
- Mustache模板-使用数组值作为对象键
- 组合多个mustache模板,然后渲染HTML