{{if}}
ブロック内からJQuery.tmpl()を使用して文字列値を調べようとしていて、何らかの理由で機能しません。JQueryのtmplがifブロック内で期待どおりに動作しない
私はKnockoutJSを使用して、さまざまなタイプのパネルでダッシュボードをレンダリングしています。各パネルには、どのタイプのパネルであるか教えてくれるType
プロパティがあります。だから、ここに私のデータがどのように見えるかの(非常に単純な)概念れる:
var data = {"Panels": [
{"Type": "A", ... },
{"Type": "B", ... },
{"Type": "C", ... },
]};
はここType
に応じて、異なるdivタグをレンダリングするテンプレートです:
<script id="template" type="text/x-jquery-tmpl">
{{if Type == "A"}}
<div>A</div>
{{else Type == "B"}}
<div>B</div>
{{else Type == "C"}}
<div>C</div>
{{else}}
<div>'${Type}' is invalid!</div>
{{/if}}
</script>
、私は常にこのような出力が得られます。
<div>'A' is invalid!</div>
<div>'B' is invalid!</div>
<div>'C' is invalid!</div>
にはどうすれば(すなわちType
。)文字列プロパティを確認することができます01を使用してブロック?
ありがとうございます!ここで
ありがとうございます。 http://jsfiddle.net/TrailHacker/cnzeg/2/ – Luc
私はちょうど私がこれを私の答えとして受け入れているという別のコメントで更新したいと思っていましたが、私の問題をさらに調査する必要があります。あなたは私の問題が私のコードの中にあることを私に証明しました。 :) 再度、感謝します!! – Luc
これを見てください:http://jsfiddle.net/rniemeyer/zRqrw/。マッピングプラグインへのパスがあなたのフィドルで正しくなかったようですので、私はそれを更新しました。主な変更点は、マッピングプラグインをすべて観測可能な状態にした後、Type()のようなコードでTypeを関数として参照する必要があることです。お役に立てれば。 –