Какая предлагаемая "наилучшая практика" способ использования привязки данных Knockout "attr" с автономными атрибутами, такими как "только для чтения" и "отключена" ?
Эти атрибуты являются особенными в том смысле, что они обычно включаются путем установки значения атрибута для имени атрибута (хотя многие браузеры работают нормально, если вы просто включаете имена атрибутов без каких-либо значений в HTML):
<input type="text" readonly="readonly" disabled="disabled" value="foo" />
Однако, если вы не хотите, чтобы эти атрибуты были применены, общая практика состоит в том, чтобы просто полностью исключить их из HTML (в отличие от того, чтобы делать что-то вроде readonly = "false" ):
<input type="text" value="foo" />
Связывание данных с нокаутом "attr" не поддерживает этот сценарий. Как только я укажу имя атрибута, мне нужно также указать значение:
<input type="text" data-bind="attr: { 'disabled': getDisabledState() }" />
Есть ли способ перекрестного браузера отключить 'disabled' или 'readonly'? Или есть трюк с настраиваемой привязкой, которую я могу использовать, чтобы не отображать ничего, если я не хочу, чтобы элемент был отключен или был доступен только для чтения?