Qual è il modo suggerito "best practice" per usare "attr" Dati di Knockout vincolanti con gli attributi standalone come "sola lettura" e "disabile"?Knockout attr vincolante con attributi come 'sola lettura' e 'disattivato'
Questi attributi sono speciale in quanto sono generalmente abilitati impostando il valore dell'attributo al nome di attributo (anche se molti browser funzionano bene se semplicemente includere i nomi degli attributi, senza alcun valore nel codice HTML):
<input type="text" readonly="readonly" disabled="disabled" value="foo" />
Tuttavia, se non si fa vogliono questi attributi da applicare, la prassi generale è semplicemente omettere del tutto dal codice HTML (in contrapposizione a fare qualcosa di simile in sola lettura = "false"):
<input type="text" value="foo" />
L'associazione dati "attr" di Knockout non supporta questo scenario. Appena ho fornire un nome di attributo, ho bisogno di fornire un valore così:
<input type="text" data-bind="attr: { 'disabled': getDisabledState() }" />
Esiste un modo cross-browser spegnere 'disabile' o 'sola lettura'? O c'è un trucco con una rilegatura personalizzata che posso usare per non rendere nulla se non voglio l'elemento disabilitato o reso di sola lettura?
Non capisco, perché è necessario fornire disabilitata se non disattivato per mostrare ancora? – jjperezaguinaga
L'esempio che ho dato è stato progettato per dimostrare semplicemente il problema. Il problema è questo: alcuni attributi in HTML sono attributi standalone - non richiedono realmente un valore. E se non vuoi che questi attributi influenzino l'HTML, li devi semplicemente omettere. Ma il meccanismo di intercettazione dati "attr" di Knockout non supporta questo scenario. –