次のように、KnockoutJSを使用してオブジェクトを反復処理しています。
今、これはすべて動作します。しかし、私が持っている問題は、id
のbutton
を単なる数値に設定することです。したがって、次のようになります。
<button id="1">Button 1</button>
<button id="3">Button 2</button>
<button id="8">Button 3</button>
だから私は次のように「Id」プロパティの前にプレフィックスを付けようとしました:
<div data-bind="foreach:Items">
<button data-bind="text: Name, attr: {'id': 'myprefix_' + Id}"></button>
</div>
しかし、それは機能していないようです。私のid
は、そのようにするとノックアウトの観測可能な関数で満たされます...
だから私の質問は、フィールドのid
属性を指定するときにどのようにプレフィックスを追加できますか?
Id
がオブザーバブルである場合、'myprefix_' + Id()
を「ラップ解除」する必要があります。
今日これを実際に使用しました-私がしなければならなかった観察可能物を解くために:
<button data-bind="attr: { id: 'prefix_' + $index() }"> Send </button>
お役に立てれば。
たとえば$ indexを使用するのが最善だと思います
<div data-bind="foreach:Items">
<button data-bind="text: Name, attr: {id: 'myprefix_' + $index() }"></button>
</div>