Jadeに、条件に基づいてチェックボックスのチェックされた属性をレンダリングさせるにはどうすればよいですか?次の2つのバージョンの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にチェックされた属性の値だけでなく、チェックされた属性全体をレンダリングさせるにはどうすればよいですか?
以下を使用できます。
input(type="checkbox", name="completed", checked=(true===false ? "checked" : undefined))
値を指定する必要はありません:
input(type="checkbox", name="completed", checked=(condition))
条件がfalseの場合、チェックされた属性は追加されません。
あなたはこのように試すことができます
option(value='man' selected = profile.sex ==='man') man
option(value='female' selected = profile.sex ==='female') female
同じことを行う別の方法は、 'if'条件によるものです。
if(#{data.refrigerated} == '1')
input(type='checkbox', name='refrigerated', checked)
else
input(type='checkbox', name='refrigerated')
条件がtrueになると、DOMのチェックボックスがオンになります。そうでない場合は、チェックボックスがオフになります。