Eğer, bir işlev kullanabilirsiniz almak için çalışıyoruz iç içe nesnesindeki anahtar biliyorsanız.
bkz: http://jsfiddle.net/jimschubert/zPWDJ/
js:
$(function() {
var names = {
"a": [
{"foo": { "name": "foo name"}},
{"bar": { "name": "bar name"}},
{"zap": { "name": "zap name"}}
],
"n": function() {
var self = this;
var n = "";
Object.keys(self).forEach(function(k, v) {
if (typeof self[k] == "object") {
if(!n) n = self[k]["name"];
}
});
return n;
}
};
var template = $('#template').html();
var out = $('#output');
var html = Mustache.to_html(template, names);
console.log(html);
out.html(html);
});
html:
<script id="template" class="template" type="text/x-mustache">
{{#a}}
<p>{{n}}</p>
{{/a}}
</script>
<h1>Output</h1>
<div id="output">
</div>
Bu tabii ki veri (yazınıza a
bir anahtar olacaktır nesnelerin bir dizidir varsayar daha büyük bir dizi, belki?) Bir diziniz yoksa, bunu neden bir nesne için ayarlayamayacağınızı ve wha için bir getter fonksiyonu yapamayacağınızı anlamıyorum. aradığınız her tuşun tever özellikleri.
Bunu biraz detaylandırabilir misiniz? Foo, 'bar' ve zap' öğelerinin veya anahtarların kendisini tekrarlamak ister misiniz? – ZeissS
@ZeissS düzenlenmiş * – samccone