2010-11-17 7 views
0

J'ai une zone de saisie, je veux changer sa classe dynamiquement en utilisant Javascript. Je dois aussi le rendre caché. Comment puis-je le faire?Masquage dynamique d'un bouton

<input id="mybutton" iconClass="iconclassbutton" class="classTochange" label="done" /> 
+1

une tête rapide ici, le code HTML que vous utilisez il n'y a pas valide. L'ajout de vos propres attributs est ** non recommandé **, et vous devriez utiliser l'attribut 'title' ou l'élément' label' * * au lieu de l'attribut 'label' * * * –

Répondre

3
var button = document.getElementById('mybutton'); 
button.style.visibility = hidden; 
button.className = newClass; 

Vous n'avez pas un attribut de type sur l'élément d'entrée cependant, est que sur le but?

+0

certains développeurs évitent d'écrire le type par défaut le < entrée dans un champ de texte un gain de 14 octets mais dans ce cas, il a obtenu un bouton ... * curieux * –

+0

merci: Qu'est-ce que je veux si je veux le ré-afficher? – Sanket

0

En utilisant jQuery:

$("#mybutton").hide() 
$("#mybutton").toggleClass("classTochange","newclass") 

Si ne me trompe pas - ne consultez la documentation jQuery pour le confirmer

0

Pouvez-vous préciser dans quelles circonstances voudriez-vous changer la classe, puis cacher la zone de texte? Je suppose que 'classe' est ici classe de stylesheet.
Quoi qu'il en soit, si vous ne voulez pas utiliser jQuery, le javascript pourrait être modifié comme suit:

function toggleButton(){ 
    var button=document.getElementById('mybutton'); 
    if(button.className=="classTochange"){ 
     button.className="newClass"; 
     button.style.visibility = 'hidden'; 
    }else{ 
     button.className="classTochange"; 
     button.style.visibility = 'visible'; 
    } 
}