過去数週間、私はjQote –クライアント側のテンプレートプラグインを使用して、実行時にhtmlフラグメントを生成してきました。
何ヶ月もの間、私は重要なデータを保存するために、id、class、altなどのdom属性を使用してきました。
.data()
今、私はデータを保存および取得するためのjqueryのメソッドについて知るようになりました。
私のプロジェクト全体で、テンプレートを使用して動的にhtmlフラグメントを生成しています。
次に、これらのテンプレートで.data()を動的に使用し、動的に作成された要素内に重要なデータを格納する方法を知る必要があります。
テンプレートのjsコードは次のようになります。
var template = templateCache.idOfTheTemplate; // say its a <li>
for(var i = 0; i < length; i ++){
$("#ulID").jqotepre(template, data);
}
レンプレート:
<script id="idOfTheTemplate" type="text/template">
<li id="<%=this.id%>">//here i want to use .data() and store the id with different key
<a id="<%=this.id%>" href="#"><%=this.linkName%></a>
</li>
</script>
解決:
$("#ulID").jqotepre(template, data);
この行が実行された後、その要素はDOMで使用可能になりました。
だから、あなたはこれをすることができます、
$("#ulID").jqotepre(template, data);
$('#' + data.id).data('liInfo', data);//data.id is the ID of the li element in the DOM