我有一个如下所示的 mixin:
mixin getrooms
div
label
select
- for (var i = 1; i <= 10; i++) {
if i === 1
option(value='#{i}') #{i} room
else
option(value='#{i}') #{i} rooms
- }
+getrooms
mixin norooms
div
label Room Type:
input(type='text', placeholder='Room Type', name='roomType')
+norooms
根据所选房间的数量,ID喜欢乘以+norooms mixin。
例如,如果选择了 3 个 id,则显示 +norooms 三次。
任何帮助将非常感激,不确定解决方案是使用 Pug 还是纯粹的 Javascript,但我会接受任何建议(请不要使用 jquery)。
我有一个pen你可以看看。
旁注:当我尝试控制台记录 req.body.rooms 时,它不断返回 #{i} 而不是实际的 textContent。
最佳答案
这无法用 Pug 解决,因为它是非静态的(Pug 仅在 HTML 发送到客户端之前调用一次)。查看客户端事件处理库,例如处理选择事件的 jQuery。然后您可以适本地乘以该项目,例如与 .clone()
方法。
关于您的注释:属性插值is not supported anymore在帕格。只需说 value=id
。
关于javascript - 根据所选选项多次调用 mixin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42164240/