Je dois désactiver un DIV et tout son contenu à l'aide de Javascript. Je peux jurer qu'en faisant un simple
<div disabled="true">
fonctionnait pour moi avant, mais pour une raison quelconque, il ne fonctionne plus. Je ne comprends pas pourquoi.
Dans IE10 : le texte "Click Me" n'est pas grisé et le gestionnaire de clics fonctionne toujours.
J'ai besoin que cela fonctionne pour IE10. Voici mon code.
<html>
<script>
function disableTest(){
document.getElementById("test").disabled = true;
var nodes = document.getElementById("test").getElementsByTagName('*');
for(var i = 0; i < nodes.length; i++){
nodes[i].disabled = true;
}
}
</script>
<body onload="disableTest();">
<div id="test">
<div onclick="alert('hello');">
Click Me
</div>
</div>
</body>
</html>
0 votes
J'essaie simplement de désactiver tout ce qui se trouve à l'intérieur d'un DIV et de ses gestionnaires.
3 votes
Non ! Les divs ne peuvent pas être désactivés. Seulement le formulaire et les éléments du formulaire.
1 votes
"true"
n'est pas une valeur valide pour l'optiondisabled
-attribut (dans le balisage)0 votes
En fait, dans le mode Quirks, IE peut désactiver une
div
mais il ne fait que griser le texte des boutons, il n'empêche pas le déclenchement des événements.0 votes
Et des conseils, utilisez
data-dissabled
pour ce genre de choses dans des éléments qui ne sont pas des formulaires0 votes
Bergi a raison. Cela devrait ressembler à
<input type=text disabled />
.0 votes
Vous pouvez définir des attributs personnalisés en xHTML et les désactiver avec CSS : stackoverflow.com/questions/639815/