Ответ 1
Вы можете использовать:
input(type="checkbox", name="completed", checked=(true===false ? "checked" : undefined))
Как получить jade для рендеринга проверенного атрибута флажка на основе условного? Как и эти две версии тега флажка HTML:
Кажется, это ТОЛЬКО действительная версия непроверенных:
> <input type="checkbox" name="vehicle" value="Bike">
Пока это отмечено:
> <input type="checkbox" name="vehicle" value="Car" checked="checked">
Вот что я пробовал до сих пор:
Этот нефрит в порядке:
input(type="checkbox", name="completed", checked=(true===true ? "checked" : "")).checkbox
потому что он делает это:
<input type="checkbox" name="completed" checked="checked" class="checkbox">
но этот нефрит не в порядке:
input(type="checkbox", name="completed", checked=(false===true ? "checked" : "")).checkbox
потому что он делает это:
<input type="checkbox" name="completed" checked="" class="checkbox">
вместо этого:
<input type="checkbox" name="completed" class="checkbox">
Как мне заставить Jade отображать весь проверенный атрибут, а не только значение проверенного attibute?
Вы можете использовать:
input(type="checkbox", name="completed", checked=(true===false ? "checked" : undefined))
Не нужно указывать значения:
input(type="checkbox", name="completed", checked=(condition))
Если условие false, не будет добавлен проверенный атрибут.
Другой способ сделать то же самое - условие "если":
if(#{data.refrigerated} == '1')
input(type='checkbox', name='refrigerated', checked)
else
input(type='checkbox', name='refrigerated')
Когда условие будет истинным, вы установите флажок в DOM, иначе вы получите флажок без отметки.
вы можете попробовать как это
option(value='man' selected = profile.sex ==='man') man
option(value='female' selected = profile.sex ==='female') female