2017-10-13 2 views
0

Je suis passé par isDisabled propriété d'un input type=text comme ci-dessous:Toute référence si input_text.isDisabled est obsolète

<html> 
    <body> 
     Disable text: <input type="text" disabled="disabled" id="i2" /> 
    </body> 
    <script> 
     var a = document.getElementById('i2'); 
     a.value = a.isDisabled; 
    </script> 
</html> 

https://jsfiddle.net/wmdgsbgo/

isDisabled propriété est undefined dans le navigateur Chrome et Edge, mais donne true dans IE. Tout paramètre (html/html5, support de version JS) à cause duquel cette propriété peut changer? Je n'ai trouvé aucune référence pour cela. Quelqu'un peut-il fournir plus de détails sur?

Répondre

0

Si un élément input contient l'attribut disabled, il n'est pas nécessaire de lui affecter une valeur. Vérification the this documentation here

Vous pouvez vérifier si votre entrée est désactivée à l'aide de la méthode getAttribute.

<script> 
    var a = document.getElementById('i2'); 
    console.log(!!a.getAttribute("disabled")); 
</script> 

Dans la deuxième ligne je vérifie si l'attribut existe et convertir le résultat en booléen avec !! (comme si elle n'existe pas, ce qui signifie l'entrée est pas invalide, il retournerait nulle.)

+0

Comme je l'ai déjà mentionné 'a.isDisabled' existe sur Internet Explorer mais pas sur Chrome ou Edge – Vishnu

+0

Je ne le savais pas. Pas familier avec IE. Cependant, ma réponse devrait fonctionner sur tous les navigateurs car elle utilise la syntaxe JavaScript de base –

+0

Mise à jour de ma réponse. Si vous avez d'autres questions, faites le moi savoir –