0

我有一个名为 current 的变量,用于设置checkedhtml 输入的值

所以current可以是''(空白)或checked=true

由于您不能将 HTML 属性设置为 false,因此我不能这样做:

input(checked="#{current}")

所以,我需要使用一个变量作为整个属性。翡翠可以吗?除了在那里写 HTML 字符串

编辑更清楚。我想做这个:

someVar = "checked=true"    
input(somevVar) // <input checked="true">
4

2 回答 2

1

玉支持布尔属性,例如checked直接通过以下语法:

input(type="checkbox", checked=current)

从文档:

还支持布尔属性:

输入(类型=“复选框”,选中)

带有代码的布尔属性将仅在为 true 时输出属性:

输入(类型=“复选框”,选中=某些值)

确保!doctype 5在布局模板中也指定了指令。

这是一个例子:

var jade = require('jade');

var templateFn = jade.compile('doctype 5\ninput(type="checkbox", checked=current)\n');
console.log(templateFn({current: true}));
console.log(templateFn({current: false}));

它输出:

<!DOCTYPE html><input type="checkbox" checked>
<!DOCTYPE html><input type="checkbox">
于 2013-05-20T20:41:39.993 回答
0

你可以这样做:

input(type='checkbox', id='IsPublic', name='IsPublic', value= model.IsPublic)

其中 model.IsPublic 来自您在节点中的响应传入的模型。

在上面的示例中,它由 mongodb 支持,其中模型如下所示:

IsPublic: { type: Boolean, default: false}

在上述情况下,有一个属性表示公共的或不是你的将是“当前的”。

注意:不要被“模型”个人混淆,我将所有内容或核心属性作为称为“模型”的对象传递以保持一致性。在您的情况下,您可能会直接传递属性,所以不要被那部分混淆只是为了澄清。

于 2013-05-20T20:41:18.603 回答