繁体   English   中英

如何使用Jade处理可能预先填写的表格?

[英]How can I handle a potentially pre-filled form with Jade?

我有这种巨大的形式,如果数据已经存在于数据库中,则只能获取预填充的数据。 否则,所有文本框中都不应包含value参数。 我以为如果我从中获取数据的变量不存在,它只会忽略value参数。 但是,相反,我得到了一个错误。

如何处理此案? 我是否需要在Jade中的每个文本框之前进行if检查,如下所示?

if (typeof(prefilled_data) !== 'undefined')
    input.form-control#prevalence(type="text", name="prevalence")
else
    input.form-control#prevalence(type="text", name="prevalence", value=prefilled_data.tb_burden_estimates.prevalence)

尽管我不介意这样做(“崇高文本”将对所有复制粘贴有所帮助),但表单字段很多,因此可能会变得很丑陋。 有没有办法将其合并到某处的一张支票中?

您似乎建议if语句的体积很大/如果在那里,则使代码难以阅读。我的建议是以编程方式创建输入,方法是将if语句减少为更易于管理的数字并回答您关于“可以在某处将其合并为一张支票”的问题

编辑

如果您想访问js中的数据,。我已经知道使用类似的东西:

script(type='text/javascript').
    window.prefilled_data = !{ JSON.stringify(prefilled_data) };

然后,您可以访问全局window.prefilled_data变量以获取数据的前端版本

你可以这样做:

- if (typeof(prefilled_data) === 'undefined'){
-   prefilled_data = '';
- }
input.form-control#prevalence(type="text", value=#{prefilled_data})

如果未定义prefilled_data则只需设置一个''

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM