Mustache JS模板和未知属性

时间:2011-08-30 13:13:05

标签: javascript jquery templates javascript-objects mustache

我正在尝试动态使用胡子JS模板。我将有一系列模板如下:

var tmpls = [
   '<p>{{name}}</p>',
   '<p><b>{{car}}</b></p>'
];

然后我想根据某些东西的索引选择正确的模板......我可以这样做:

var stuff = {
      name: 'bob'
}

$.mustache(tmpls[index], stuff);

但我不太确定如何根据其他内容填充值,例如输入ID及其值:

<input type="text" id="name" value="Bob" />
<input type="text" id="car" value="Corsa" />

$.mustache(tmpls[index], {
    $('input').eq(0).attr('id') : $('input').eq(0).val()
});

我想我正在尝试创建一个动态传递胡子的对象。属性名称是输入字段的ID,值来自输入字段。

这可能吗?

谢谢,Dom

1 个答案:

答案 0 :(得分:1)

构建stuff对象的一种可能方法是使用.each()迭代元素:

var stuff = {};

$('input').each(function() {
    stuff[$(this).attr('id')] = $(this).val();
});

$.mustache(tmpls[index], stuff);