Jade - 我可以在'if'语句中引用DOM元素吗?

时间:2015-05-22 13:13:33

标签: pug

我有以下简单的index.jade

input#elem1
'then I need the following:'
if #elem1.val()='A' then
    label#elem2 input=A

我知道我可以在我的js文件中执行此操作,但我一直在寻找使用Jade的更简单的解决方案。

2 个答案:

答案 0 :(得分:1)

不,我担心这在翡翠中是不可能的。 Jade是一种模板语言,它在渲染之前生成HTML 。无论你在Jade中放置的if / else逻辑是什么,只能确定某些东西是否会被渲染

从另一个意义上说,它不是动态的。您的if #elem1.val()='A'没有任何意义,因为在将Jade转换为HTML时,#elem1不会有值。当它被渲染以至于它可能具有价值的时候,对于Jade来说,做任何事都为时已晚。从根本上说,这是不可能的。

我希望这是有道理的。您可能想要了解模板语言的实际内容:What is a templating language?

答案 1 :(得分:0)

JS似乎无法做到这一点。 这是最接近的解决方案 - from ForbesLindesay