La petite histoire est que je dois utiliser un interrupteur à bascule pour déterminer laquelle de mes méthodes va être appelée. Donc, je suppose que vous pouvez obtenir un booléen, en se référant à savoir si le commutateur est activé ou désactivé? mais comment puis-je obtenir cela?
J'ai donc implémenté un interrupteur à bascule en html
var switchTrueFalse = document.getElementById('ToggleswitchId').checked
J'ai vu quelqu'un faire quelque chose comme ça, avec javascript. p >
<label class="switch"> <input type="checkbox" id="ToggleswitchId" > <span class="slider round"></span> </label>
mais tout ce que j'obtiens est "La propriété 'vérifiée' n'existe pas sur le type HTMLElement"
4 Réponses :
vérifié n'est pas une méthode. C'est l'un des attributs qui est un booléen.
Donc, document.getElementById ('ToggleswitchId'). checked renvoie true quand il est coché
vérifié est une propriété d'entrée de case à cocher qui renvoie vrai ou faux.
<label class="switch"> <input type="checkbox" id="ToggleswitchId" onClick="clickCheckbox()" >call method <span class="slider round"></span> </label>
function clickCheckbox() {
if (document.getElementById('ToggleswitchId').checked) {
console.log("check")
} else {
console.log("uncheck");
}
}
J'ai essayé votre code et vérifié, ne fonctionne pas. "La propriété 'vérifiée' n'existe pas sur le type HTMLElement".
Utilisez-vous Angular?
J'utilise Angular CLI 7.1.4
Comme vous êtes nouveau sur le débordement de la pile, vous devriez donc marquer la question avec angulaire également, mentionnez tout dans la question avec le code que vous avez essayé.
vous pouvez trouver votre réponse ici stackoverflow.com/questions/48002244/...
Merci pour l'aide et pour les conseils concernant le stackoverflow.
Vous devez appeler une fonction JavaScript en cochant / décochant la case.
<label class="switch"> <input type="checkbox" id="ToggleswitchId" onclick="test()" > <span class="slider round"></span> </label>
function test() {
var switchTrueFalse = document.getElementById('ToggleswitchId').checked;
console.log(switchTrueFalse);
}
Puisqu'il s'agit d'une balise d'entrée, essayez d'utiliser HTMLInputElement au lieu de HTMLElement .
Essayez d'utiliser ce code à la place et voyez s'il fonctionne:
document.getElementById("ToggleswitchId") as HTMLInputElement).checked
.checked n'est pas une fonction. C'est une variable contenant l'état vérifié.
Utilisez-vous angular 2?