Knock-out attr liaison avec des attributs comme "lecture seule" et "personnes handicapées"

Ce qui est suggéré de "meilleures pratiques" de façon à utiliser knock-out du "attr" liaison de données avec autonome des attributs comme "readonly" et "désactivé"?

Ces attributs sont spécial qu'ils sont généralement activée par le réglage de la valeur de l'attribut l'attribut nom (bien que de nombreux navigateurs fonctionnent très bien si vous suffit simplement d'inclure les noms d'attribut sans aucune valeurs dans le code HTML):

<input type="text" readonly="readonly" disabled="disabled" value="foo" />

Toutefois, si vous ne pas voulez ces attributs pour être appliquée, la pratique générale est de simplement les ignorer complètement à partir du HTML (par opposition à faire quelque chose comme readonly="false"):

<input type="text" value="foo" />

Knock-out du "attr" liaison de données ne prend pas en charge ce scénario. Dès que j'ai de fournir un nom d'attribut, j'ai besoin de fournir une valeur ainsi:

<input type="text" data-bind="attr: { 'disabled': getDisabledState() }" />

Est là une manière de croix-navigateur de désactiver l'option "désactivé" ou "readonly'? Ou est-il un truc avec un liaison personnalisée que je peux utiliser pour ne pas rendre rien si je ne veux pas l'élément désactivé ou mis en lecture seule?

  • Je ne comprends pas, pourquoi vous avez besoin de fournir désactivé si vous n'avez pas désactivé pour le même spectacle?
  • L'exemple que j'ai donné est conçu pour simplement illustrer le problème. La question est: est-ce que certains attributs HTML sont autonomes attributs - ils n'ont pas vraiment besoin d'une valeur. Et si vous ne voulez pas de ces attributs pour influer sur le code HTML, puis il vous suffit de les omettre. Mais knock-out "de l'attribut" data-binding mécanisme ne prend pas en charge ce scénario.