我试图弄清楚如何将表单中的数据(特别是复选框中的数据)添加到Firebase。
providers
和services
是我的Firebase中的两个单独项目。我在ng-repeat
上使用providers
来生成我的复选框。
<form ng-submit="addService(service)">
<input type="text" name="name" ng-model="service.name">
<label for="{{ provider }}" ng-repeat="provider in providers">
<input type="checkbox" name="provider" id="{{ provider }}" ng-model="provider.name">
{{ provider.name }}
</label>
<button type="submit">Submit</button>
</form>
我的addService()
函数看起来像这样:
$scope.addService = function(service) {
services.$add({
name: service.name
})
};
我试图弄清楚如何将每个所选复选框的key
传递给addService()
函数,所以看起来像这样:
"providers" : {
"provider1" : { "name" : "The Whittington Hospital" },
"provider2" : { "name" : "Homerton Hospital" },
...
},
"services" : {
"service1" : {
"name" : "Hernia Repair",
"providers" : {
"provider1" : true,
"provider2" : true
}
}
...
}
任何有关如何做这样的事情的帮助将不胜感激。提前谢谢!
答案 0 :(得分:0)
如果我理解正确,您只希望获得一个选定(或未选定)的工厂清单?
如果是这样,一种简单的方法是创建一个名为selection
的对象,其中选择了factories
。单击提交按钮后,您可以调用Firebase
服务以添加具有相关信息的对象(服务名称,所选工厂列表),然后清除selection
等等。 / p>
您还可以使用$watchCollection
观看此选择集,因此只能维护所选项目的列表。
我在这里创建了一个demo来说明第一个解决方案。