0

口ひげ 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 であり、値は入力フィールドからのものです。

これは可能ですか?

ありがとう、ドム

4

1 に答える 1

1

スタッフ オブジェクトを構築する 1 つの可能な方法は、以下を使用して要素を反復処理すること.each()です。

var stuff = {};

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

$.mustache(tmpls[index], stuff);
于 2011-08-30T13:17:28.443 に答える