Mise à jour de la valeur de data-src d'une iframe fancybox en javascript
Fermé
Southstyle
Messages postés
46
Date d'inscription
mardi 17 avril 2012
Statut
Membre
Dernière intervention
26 mars 2021
-
Modifié le 26 mars 2021 à 11:18
Hadus - 3 avril 2021 à 18:11
Hadus - 3 avril 2021 à 18:11
A voir également:
- Iframe data-src
- App data - Guide
- Windows data recovery - Télécharger - Récupération de données
- Get data back - Télécharger - Récupération de données
- Power data recovery - Télécharger - Sauvegarde
- Fichier .data - Guide
1 réponse
Salut, vous partez du mauvais pied. En tout cas ça m'a l'air compliqué votre méthode alors que les dataset HTML sont assez simple:
Là vous utilisez value qui n'a aucun rapport avec les dataset: .value est un attribut d'objet et un dataset une série de valeurs indiquée par leur noms de data en HTML:
Pour y accéder en JavaScript:
En gros c'est un objet/méthode dataset(value est une méthode duiifférente) qui correspond à une syntaxe en HTML qui est forcément différente en JS.
Explication complète:
https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes
Quand à la comparaison avec INPUT(ou INPUT.value) qui est un élément HTML et la méthode .innerHTML qui permet d'obtenir ou de changer la valeur du contenu de n'importe quelle balise elle montre bien que vous avez des lacunes et mélangez un peu des choses qui n'ont rien à voir...
ça c'est faux ce qui doit suivre le signe égal doit être une fonction et non une chaîne de caractère et encore moins une attribution de valeurs:
Ou mieux encore:
https://www.w3schools.com/jsref/event_onclick.asp
ps: si vous devez 2 fois faire la même chose pour ne pas y arriver c'est qu'il y a un problème quelque part...Une seule fois bien fait/en réglant le problème suffit. Multiplier des codes erronnés = plus d'erreurs mais jamais un résultat qui fonctionne.
Là vous utilisez value qui n'a aucun rapport avec les dataset: .value est un attribut d'objet et un dataset une série de valeurs indiquée par leur noms de data en HTML:
<HTMLElement data-cequejeveux='la valeur voulue' data-uneautre='autre valeur' > ... </HTMLElement>
Pour y accéder en JavaScript:
console.log(HTMLElement.dataset.cequejeveux); //-- ou pour en ajouter ou changer une valeur HTMLElement.dataset.uneautre='mise à jour de la data'; HTMLElement.dataset.nouvelle='Hello'; console.log(HTMLElement.dataset.uneautre); console.log(HTMLElement.dataset.nouvelle);
En gros c'est un objet/méthode dataset(value est une méthode duiifférente) qui correspond à une syntaxe en HTML qui est forcément différente en JS.
Explication complète:
https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes
Quand à la comparaison avec INPUT(ou INPUT.value) qui est un élément HTML et la méthode .innerHTML qui permet d'obtenir ou de changer la valeur du contenu de n'importe quelle balise elle montre bien que vous avez des lacunes et mélangez un peu des choses qui n'ont rien à voir...
onclick="blabla bla"
ça c'est faux ce qui doit suivre le signe égal doit être une fonction et non une chaîne de caractère et encore moins une attribution de valeurs:
<div id='test' onclick="function(){}" >...</div>
Ou mieux encore:
getElementById('test').addEventListener(click', function(){
//...
});
https://www.w3schools.com/jsref/event_onclick.asp
ps: si vous devez 2 fois faire la même chose pour ne pas y arriver c'est qu'il y a un problème quelque part...Une seule fois bien fait/en réglant le problème suffit. Multiplier des codes erronnés = plus d'erreurs mais jamais un résultat qui fonctionne.