11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

voici mon problème :
je souhaiterais déclencher une popin à une certaine valeur. Cette valeur ne se contextualise dans le code source sous la forme d'une div, type :

 <div class="total_value">
	            (&#8364;99,00)
       </div>


où 99,00 est la valeur que je souhaiterai transformer en variable.

Merci d'avance !
Modifié par JimmyWJimmy (14 Sep 2010 - 12:16)
en fait c'etait super simple :

<script type="text/javascript">
var valeur = document.getElementById('total_value').innerHTML;
</script> 


Voilà !
Modifié par JimmyWJimmy (14 Sep 2010 - 12:24)
Hello,

Si tu ne cherches pas à afficher cette information, juste à la stocker dans une variable JS, tu peux aussi générer directement ton code JavaScript:
<!-- Avant -->
<div class="total_value"> 
  (&#8364;99,00) 
</div>

<!-- Après -->
<script>var total_value = '(&#8364;99,00)';</script>


En HTML5, tu peux aussi stocker des données dans des attributs custom:
<div class="total_value" data-totalvalue="99,00"> 
  Ici une information lisible... 
</div>
Salut

d'abord merci pour l'éclairage,
malheureusement ta solution n'est pas applicable dans mon cas, puisque je n'ai pas du tout la main sur la div total_value construite dynamiquement via template.

De même, pas possible d'assigner non plus la valeur de total_value à la main en js, sinon il faudrait couvrir tous les cas de figures, dans mon cas de 00.01 à 999.99

C'est dommage parce que le raccourci était intéressant Smiley lol

Mais je vais très bientot avoir besoin d'aide sur l'observation de mon évènement.
JimmyWJimmy a écrit :
De même, pas possible d'assigner non plus la valeur de total_value à la main en js, sinon il faudrait couvrir tous les cas de figures, dans mon cas de 00.01 à 999.99

Euh...
Donc si les scripts côté serveur génèrent <div>A</div>, c'est pas à la main, mais s'ils génèrent <script>var test='A'</script>, c'est fait «à la main»? J'arrive pas bien à suivre la logique, là. Smiley smile
Heuuuu Smiley smile

J'ai dû mal m'exprimer, d'un côté la div et son contenu sont générés par le serveur (morceau de template auquel je n'ai pas accès), et de l'autre j'intègre mon javascript dans un morceau de template différent,(donc oui généré aussi par le serveur) avec javascript généré côté client.

D'où la nécéssité de transformer l'html en variable, si j'avais accès au morceau de template serveur, j'aurais surement découvert que la div était alimentée par une macro dédiée (en FTL).
Et là ta solution était impec ! Smiley lol

En gros je voulais déclencher l'apparition d'une popin à un certain montant, info qui dans la page n’existait qu'en html, donc html > variable > nettoyage de la chaine > condition et bim !

Après sans trop rentrer dans les détails, chaque morceau de mon template possède une sorte de z-index "natif" (comprendre pas css) qui interdit de jouer avec des valeurs CSS négatives pour faire remonter du contenu, et comme là je bossais dans le footer, pas le choix pour pouvoir exploiter mon html : encore faut-il qu'il éxiste déjà !, du coup si ma condition est remplie, je remplie une <div> vide qui se trouve dans un morceau de template généré en amont, dans le cas présent un morceau de la navigation.

J'espère que c'est plus clair !

Et finalement je me suis démerdé tout seul pour le reste Smiley biggrin !