jQueryテンプレートは、しばらくの間非推奨になりました。
JavaScriptオブジェクトの形式のデータがあり、それをHTMLとしてフォーマットし、DOMに追加します。最近、それを行う最善の方法は何ですか?
$('<li>',{id:'my-'+Id}).append($('<span>').text(myText))
などのjQueryを介して要素を作成する必要がありますか?これは私のプロジェクトでそれを行う方法です:
HTMLでテンプレートを定義します。
<script type="text/template" id="cardTemplate">
<div>
<a href="{0}">{1}</a>
</div>
</script>
String.formatを使用して変数を置換します。
var cardTemplate = $("#cardTemplate").html();
var template = cardTemplate.format("http://example.com", "Link Title");
$("#container").append(template);
String.prototype.format = function() {
var args = arguments;
return this.replace(/{(\d+)}/g, function(match, number) {
return typeof args[number] != 'undefined'
? args[number]
: match
;
});
};
非常にシンプルで、テンプレートを組み合わせることができます。
Mustache.jsはテンプレート化に非常に適しています。
ずっとテンプレート。JSONを手動で解析するよりもずっと簡単です。私がそれに貢献したので、テンプレートのコンパイルを必要とせず、JSONとJavaScriptのみを使用するため、json2htmlには賛成です。
私は本当にJavaScriptを使用してhtml要素を構築するのが好きではないので、テンプレートを使用することをお勧めします。
テンプレートのリストと関連する質問を見つけることができます こちら 。
以前はjQuery Templates
を使用していましたが、非常にシンプルですが、もはや積極的ではありません。