javascript - meteor ,自动表格,预填充输入

标签 javascript meteor meteor-autoform

一直在努力使用自动表单来预填充数据,尤其是在隐藏字段中。

我已经尝试了很多东西,包括使用 autoValue 和 defaultValue,但是 autoValue 在服务器端进行了验证,我需要从客户端的页面中获取一个值(路由器当前路由名称),所以在查找时它会失败在 .clean 函数中,defaultValue 接受一个值,而不接受函数。

如何将值传递给表单以预填充某些字段而不显示该字段?

最佳答案

所以,我发布了这个问题,因为我一直在努力寻找答案并想分享。

最后,您可以将 doc 属性传递给表单 形式如下:

{{> quickform 
   collection"mycollection" 
   id="formid" 
   type="method" 
   ...
   doc=mydoc
}}

然后您需要一个模板助手来创建文档:

Template.myform_template.helper({
   mydoc: function() {
      return {field1: value1, field2:value2 };
   }
})

您不必填写所有字段,只需填写您想要预填写的字段,就像“更新”表单的工作方式一样。

为了不在表单中显示此值,我曾尝试使用 omitFields 属性,但这不起作用,因为文档中的字段已被删除。所以我找到的唯一方法是将架构中的字段类型声明为“隐藏”

mycollection.attachSchema(new SimpleSchema({
   field1: {
       type: String,
       optional: false,
       autoform: {
            type: "hidden"
       }
   }
}))

给你。

现在,在方法中调用 schema.clean(doc) 时,该值并未真正“验证”,因为模式中没有可验证的内容,因此您应该在方法调用中自己验证这些值。

关于javascript - meteor ,自动表格,预填充输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32671226/

相关文章:

javascript - 将子 JSON 对象移动到其自己的具有父 ID 的对象

javascript - CollectionFS 中是否有用于文件下载的事件监听器/回调?

javascript - 如何查找 meteor 集合中最后一个元素/对象的 id?

meteor - 通过 autoform hooks 调用 meteor 方法插入新文档

json - 如何从 meteor 中的数据库生成简单模式

javascript - 使用javascript更改url并修改历史记录?

javascript - JQuery 没有从多个 .on() 调用中读取?

javascript - 条件路由始终在页面刷新时重定向

javascript - Mongodb $inc 按变量

javascript - 使用 Meteor 对集合中的对象进行分组