jQuery a la caractéristique/méthode très ".data", je me demande s'il y a un moyen d'avoir les données dans le code pour que jQuery puisse l'utiliser quand le rendu de html est fait. Supposons que je possède un répéteur et que je boucle des enfants, et que je souhaite ajouter des données à ces enfants sans utiliser de classes, etc. Devrai-je ajouter javascript à ce répéteur pour ajouter des choses aux "données de jquery"? façon?Prépopulation de données jQuery en html
Répondre
Il est le metadata plugin qui pourrait faire ce que vous parlez
Par exemple, vous pouvez faire: (Vous pouvez choisir parmi différents formats en définissant une option)
<li class="someclass {some: 'data'} anotherclass">...</li>
OR
<li data="{some:'random', json: 'data'}">...</li>
OR
<li><script type="data">{some:"json",data:true}</script> ...</li>
OR
<li data-some="'random'" data-json="'data'">...</li>
Après cela, vous pouvez simplement faire:
var data = $('li.someclass').metadata();
if (data.some && data.some == 'data')
alert('It Worked!');
HTML 5 a une nouvelle norme pour les attributs commençant par "données-". Voir ici link text.
Vous pouvez l'utiliser pour stocker des données et utiliser un sélecteur pour analyser les données.
Pensez-vous "quel meilleur endroit pour stocker les données d'un objet que sur l'élément lui-même"?
Par exemple, vous avez un bol de fruits?
function Fruit(name, color){
this.name = name
this.color = color
}
var apple = new Fruit("apple", "red")
var orange = new Fruit("orange","orange")
var bowl = [apple, orange]
Maintenant vous rendez le bol de fruits sur la page?
Fruit.prototype.render = function(){
return createElement('li').html(this.name)
}
$.each(bowl, function(i, fruit){
$('#fruitbowl').append(fruit.render())
}
Ok. Maintenant, vous pouvez ajouter l'objet à l'élément trivialement en changeant la dernière ligne et fixer l'objet de fruits réels à leurs Rendus éléments ainsi:
$('#fruitbowl').data('obj', fruit).append(fruit.render())
Ce qui rend sacrément facile d'accéder aux données lorsqu'un événement se produit . Par exemple changer la routine de rendu pour inclure un événement click:
Fruit.prototype.render = function(){
var el = createElement('li').html(this.name)
el.click(function(){
alert('You clicked on an ' + $(this).data('obj').name)
}
}
Maintenant, on peut facilement dire qu'il est stupide de dupliquer l'objet en l'attachant aux éléments de cette façon, puisque vous avez déjà l'objet à la fois, dans le cadre du script, et si vous l'écrivez correctement, à l'intérieur de la fermeture de l'objet. Et ce sont probablement des arguments valables. Mais cela, je suis d'accord, est plutôt cool :-)
- 1. Prépopulation de UITextView avec des données?
- 2. Prépopulation d'un FileField Django
- 3. Prépopulation de Django (non-modèle) Formulaire
- 4. Ajout de données ajax jquery, données html
- 5. Visualisation de données - Affichage d'un arbre en HTML, CSS, JQuery
- 6. Intégrer des données brutes en HTML pour analyser dans jQuery
- 7. jQuery envoyer des données HTML via POST
- 8. HTML/CSS/jQuery: Données tabulaires & miniatures
- 9. Manipulation de table HTML en utilisant jQuery
- 10. Stocker des données arbitraires en HTML
- 11. Prépopulation d'inlines basée sur le modèle parent dans Django Admin
- 12. Imprimer les données de base de données en html Tableau
- 13. Données de retour html séparées en ajax
- 14. Affichage des données de table en HTML
- 15. Jquery - Convertir les caractères ascii en HTML
- 16. Conversion de données de table HTML en CSV et XML
- 17. Entrée de données HTML
- 18. Échapper html dans Jquery
- 19. J'ai besoin de récupérer les balises html données dans la boîte de texte en utilisant jquery
- 20. Analyser les données de temps à partir de HTML en utilisant jQuery
- 21. Comment obtenir des données de la 5ème cellule d'une ligne de table HTML en utilisant jQuery
- 22. événements de liaison en jquery à html remplacé
- 23. Jquery Insérer HTML
- 24. Formulaire HTML et Jquery
- 25. Extraction de données HTML
- 26. jQuery textbox et html
- 27. Simple jQuery fonctionne en HTML, pas ASP.NET
- 28. jquery, XML vers HTML
- 29. Cochez les cases HTML en utilisant jQuery
- 30. calculatrice simple HTML en utilisant Jquery
Comment cela fonctionnerait-il dans les différents navigateurs? (IE 7, 8, FF 3 Safari 4, Chrome) –
Vous devez utiliser un doctype XHTML, puis passer à HTML5 à un stade ultérieur. Les navigateurs actuels devraient ignorer cet attribut. –