HTML
<form role="form" ng-submit="addStore(store)" name="AddStoreForm" novalidate>
<label>Store Category</label>
<label class="checkbox-inline" ng-repeat="store_category in store_cat">
<input type="checkbox" name="store_category" ng-model="store.store_category">{{store_category.name}}
</label>
</label>
</form>
<button type="submit" class="btn btn-primary campwidth">SUBMIT</button>
AngularJS
$scope.store_cat = [
{ name: 'A', selected: false },
{ name: 'B', selected: false },
{ name: 'C', selected: false }
];
$scope.addStore = function(store){
console.log("responsestore", store);
alert(store.store_category);
};
这里我把商店类别作为数组。提交表格后。我的alertbox类别未定义。我想使用API发送结果。如何解决这个问题。 PLUNKER
答案 0 :(得分:2)
它可以使用按钮标签,而不是像bootstrap <button type="submit" class="btn btn-primary campwidth" ng-click="addStore(store_cat)">SUBMIT</button>
中的表单一样,这里不需要使用表单标签b&#39;因为它可能会导致angular.js中的冲突,因此,它肯定会用于复选框。
http://plnkr.co/edit/qSFnxTNZ4n63pw3JXZA5?p=preview
答案 1 :(得分:0)
你可以这样做:<button type="submit" class="btn btn-primary campwidth" ng-click="addStore(store_cat)">SUBMIT</button> here
http://plnkr.co/edit/KtBzqeMF9FZt6bnI0MBF?p=preview
您不应该使用表单并使用该函数nope,当您使用angular时,这种方式是错误的。
答案 2 :(得分:0)
假设您的问题是数据格式没有被推送到新的store
对象,这里有一个解决方案:
<form role="form" name="AddStoreForm" novalidate ng-init="store={}">
<label>Store Category</label>
<label class="checkbox-inline" ng-repeat="store_category in store_cat">
<input type="checkbox" name="store_category" ng-init="store[$index]={name: store_category.name, selected: false}" ng-model="store[$index].selected">{{store_category.name}}
</label>
</label>
<button type="submit" ng-click="addStore(store)" class="btn btn-primary campwidth">SUBMIT</button>
</form>
plunker带有工作示例。