2

過去数週間、私は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
4

1 に答える 1

1

JQueryの.data()関数は、html5データ要素で機能します。

意味

<li id="myId" data-food="value" > 

と同じです

$("#myId").data('food', 'value');

html5データ要素の詳細については、http: //html5doctor.com/html5-custom-data-attributes/をご覧ください。

JQuerysデータ関数の詳細についてはhttp://api.jquery.com/jQuery.data/をご覧ください。

于 2011-04-08T22:19:41.757 に答える