您好我正在开发Angularjs和web html中的Web应用程序。男性和女性都有两个单选按钮。我希望默认情况下将男性设置为已选中。我尝试了很多方法,但它没有用。最后我尝试使用ng-checked =“True”并且它有效。但当我检查男性时,我在角度代码中得到了不确定。
<label for="male" class="male">
{{ 'Male' | translate }}
<span class="input-icon"><img src="images/male-icon.png"></span>
<input type="radio" id="male" name="selector" ng-model="Gender" value="M" ng-checked="true">
<span class="selector-male"></span>
</label>
<label for="female" class="female">
{{ 'Female' | translate }}
<span class="input-icon"><img src="images/female-icon.png"></span>
<input type="radio" id="female" name="selector" ng-model="Gender" value="F">
<span class="selector-female"></span>
</label>
以上代码默认选择男性。但问题是,当我选择女性时,我会在下面的代码中找到女性。
Gender: $scope.Gender
每当我不选择任何东西时(默认情况下会点击男性)我在性别:$ scope.Gender中未定义。我可以知道为什么我会变得不确定吗?任何帮助,将不胜感激。谢谢
答案 0 :(得分:0)
问题是:
ng-checked=true
会将复选框设置为true,而不是相关的currentValue。要修复,你应该:
ng-checked="Gender"
和控制器中的$scope.Gender = 'M'
。
如果您不想在控制器中添加任何内容,请将代码包装在div中:
<div ng-init="Gender='M'"><label></label></div>
答案 1 :(得分:0)
删除名称属性并进行ng-checked,即可正常工作。