Jadecheckbox检查属性取消选中基于条件(if)

如何让玉石根据条件渲染checkbox的选中属性? 就像这两个HTMLcheckbox标签版本一样:

这似乎是未经检查的唯一有效版本:

> <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上检查checkbox,否则您将取消选中checkbox。

你可以试试这个

  option(value='man' selected = profile.sex ==='man') man option(value='female' selected = profile.sex ==='female') female