我尝试使用单选按钮制作表单。我使用angular,我想获得已检查单选按钮的值。我尝试使用ng-model,但这不起作用。
代码:
<div class="btn-group" data-toggle="buttons">
<label class="btn btn-default active" style="width: 100%">
<input ng-model="typeOfFood" type="radio" checked="checked" ng-value="'recomandation'" /> Recomandations
</label>
<label class="btn btn-default" style="width: 100%">
<input ng-model="typeOfFood" type="radio" ng-value="'apperitive'"/> Apperitives
</label>
<label class="btn btn-default" style="width: 100%">
<input ng-model="typeOfFood" type="radio" ng-value="'main'"/> Mains
</label>
<label class="btn btn-default" style="width: 100%">
<input ng-model="typeOfFood" type="radio" id="desserts" ng-value="'dessert'"/> Desserts
</label>
</div>
控制器:
angular.module('demoApp')
.controller('MenuCtrl', function ($scope) {
$scope.typeOfFood;
$scope.option = function() {
console.log($scope.typeOfFood);
}
});
我在控制器中收到了未定义的变量“typeOfFood”。我该如何解决这个问题?
感谢。
答案 0 :(得分:0)
您有几个错误:
您正在以一种糟糕的方式初始化角度主模块,请使用:
angular.module('demoApp',[])
如果没有数组,您将尝试查找demoApp而不是创建新实例。
此外,您不能使用 ng-controller 和 ng-app 指令。
如果您想使用选项功能,请使用 ng-click 指令调用它:
<label class="btn btn-default" style="width: 100%">
<input ng-click="option()" ng-model="typeOfFood" type="radio" id="desserts" ng-value="'dessert'" /> Desserts
</label>
<强> Codepen:强> http://codepen.io/armellajuan/pen/QyKPpO
也许这本书会帮助你了解这些细节: http://www.angularjsbook.com/angular-basics/chapters/introduction/