11486 sujets

JavaScript, DOM et API Web HTML5

Le problème, c'est que ton javascript, il faut qu'il se déclenche avec une action. Actuellement, ta condition est "lus" uniquement au chargement de la page. Tu peux mettre ton code dans une fonction javascript, qui sera déclencher à chaque fois que tu press une touche de clavier "onkeyup dans text area" par exemple .

http://jsfiddle.net/AZKyn/406/

au passage, fait gaffe avec ton if

if(document.getElementById('zonetexte')).value.length>=10)

tu as une parenthèse fermante en trop
Modifié par JENCAL (01 Dec 2015 - 15:26)
fredericmarcel a écrit :
Merci.
Maintenant, au lieu d'afficher une alert, je voudrais que le bouton "ok" devienne visible.
Je ne comprends pas pourquoi ça ne marche pas.

http://jsfiddle.net/fredericmarcel/s0zurekm/3/


Parce que, comme je disais, tu n'a pas mis d’événement. ce qui se passe actuellement, c'est que ton bout de code javascript est exécuter une seul fois au chargement de la page, c'est tout. Il faut savoir quel événement tu souhaite? quel événement doit déclencher ton javascript ? (click souris ? appui sur touche ? touche particulière ? survol souris ?) dans mon exemple au dessus, j'ai utiliser un onkeyup.

http://www.w3schools.com/js/js_htmldom_events.asp
Modifié par JENCAL (01 Dec 2015 - 15:50)
Oui, dans le <head>, il y a
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

De toute façon, l'eventlistener est du javascript, non ?
Pour le moment, je n'utilise pas de jquery.
Oui parce qu'en faite, il y à deux problème dans ton code

var zonetexte = document.getElementById('zonetexte');
zonetexte.addEventListener("input", function(){
var zonetexte = document.getElementById('zonetexte');
zonetexte.addEventListener("input", function(){
   if(zonetexte.value.length >= 10) {
       if(zonetexte.value.length == 10) {
           document.getElementById("ok").style.visibility= 'visible' ; 
       }
    }
 });

tu as deux fois
var zonetexte = document.getElementById('zonetexte');
zonetexte.addEventListener("input", function(){

mais qu'une seul fermeture..........
 });

donc forcément, ça plante !

ensuite : tu as deux fois l'id "ok", une fois sur la div, une fois sur l'input... donc bon, à la base un id c'est sensé être UNIQUE.
        <div id="ok">
             <input id="ok" type="submit" name="submit" class="btn btn-success" value="ok" 
       </div>


et l'input pas fermé.
Modifié par JENCAL (01 Dec 2015 - 16:10)
héhé, tu as corrigé la moitié, et tu as ajouter des erreurs Smiley smile

jsfiddle ou codepen ne lise pas les balises <script>, il ne faut pas les mettre, et tu as encore le double id...