Frage

In den letzten paar Wochen, ich habe mit jQote - clientseitige Templating Plugin hTML-Fragmente in Laufzeit zu erzeugen.

Seit Monaten Ich habe mit der dom-Attribute wie id, class, alt kritische Daten zu speichern.

Nun, ich kam .data() Methode in Jquery zu Speicher kennen und Abrufen von Daten.

Alle über mein Projekt Ich erzeuge dynamisch HTML-Fragmente mit Hilfe von Vorlagen.

Jetzt muss ich wissen, wie ich .data verwenden können () in diesen Vorlagen dynamisch und speichern kritische Daten innerhalb eines dynamisch erstellten Element.

Die Vorlage js Code wie folgt ist,

var template = templateCache.idOfTheTemplate; // say its a <li>
for(var i = 0; i < length; i ++){
$("#ulID").jqotepre(template, data);
}

Vorlage:

<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>

Lösung:

 $("#ulID").jqotepre(template, data);

Nachdem diese Zeile ausgeführt wurde, war das Element im DOM zur Verfügung.

Also, Sie können dies nur tun,

$("#ulID").jqotepre(template, data);
$('#' + data.id).data('liInfo', data);//data.id is the ID of the li element in the DOM
War es hilfreich?

Lösung

Die .data () Funktion in JQuery funktioniert auf html5-Datenelemente.

Bedeutung

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

Ist das gleiche wie

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

Sie können mehr über html5 Datenelemente unter http://html5doctor.com/html5- benutzerdefinierte Daten-Attribute /

Und mehr auf JQuerys Datenfunktion unter http://api.jquery.com/jQuery.data/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top