Javascript 将表单属性传递到部分

Javascript 将表单属性传递到部分,javascript,node.js,handlebars.js,Javascript,Node.js,Handlebars.js,我正在使用NodeJS开发一个应用程序,并且能够轻松地使用把手和部件。我已经到了这样一个地步:我有视图和编辑汽车表单 例如,在用户提交应用程序后,我有“查看”和“编辑”链接,分别指向localhost:3000/cars/:id/View和localhost:3000/cars/:id/Edit 这两个链接之间的唯一区别是“查看”页面的表单带有readonly=“readonly”,“编辑”没有readonly属性 我想做什么 汽车/视图 {{ >car_form readonly=tru

我正在使用NodeJS开发一个应用程序,并且能够轻松地使用把手和部件。我已经到了这样一个地步:我有
视图
编辑
汽车表单

例如,在用户提交应用程序后,我有“查看”和“编辑”链接,分别指向
localhost:3000/cars/:id/View
localhost:3000/cars/:id/Edit

这两个链接之间的唯一区别是“查看”页面的表单带有
readonly=“readonly”
,“编辑”没有
readonly
属性

我想做什么

汽车/视图

{{ >car_form readonly=true }}
汽车/编辑

{{ >car_form readonly=false }}

<button type="submit">Submit</button>
{{>car\u form readonly=false}
提交
这是否适用于把手模板?或者我能做些类似的事情来得到我想要的结果吗


谢谢大家!

您正确地传递了
只读
选项,现在您需要做的就是在呈现表单时使用它

为此,我使用了一个助手,通过JavaScript呈现表单,在这里,我们可以使用Funationality Handlebar支持做任何我们喜欢做的事情

//假设这是您在Node.js中保存的用户输入
//并希望在视图中渲染和编辑表单。
var userInput={
“姓名”:“鲍勃”,
“标语”:“是的,我是鲍勃!”
};
把手.注册表帮助器('userForm',函数(选项){
var formOpening=options.hash.readonly?”:“”;
//注意,我在这里输入'userInput'作为上下文。
//根据您的设置,您可能需要以不同的方式执行此操作。
var formContents=options.fn(用户输入);
返回formOpening+formContents+“”;
});
var userFormTemplate=handlebar.compile(document.getElementById(“userFormTemplate”).innerHTML);
var pageTemplate=handlebar.compile(document.getElementById(“页面模板”).innerHTML);
把手。注册表部分('userForm',userFormTemplate);
document.getElementById(“wrap”).innerHTML=pageTemplate()

看法
{{>userForm readonly=true}
编辑
{{>userformreadonly=false}
{{{#userForm readonly=readonly}
提交
{{/userForm}}