繁体   English   中英

AngularJS单选按钮选中的值不起作用

[英]AngularJS radio button selected value not working

嗨,我正在开发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中未定义。 我可以知道为什么我会变得不确定吗? 任何帮助,将不胜感激。 谢谢

问题是:

ng-checked=true将仅将复选框设置为true,而不是相关的currentValue。 要修复,你应该:

ng-checked="Gender" HTML中的ng-checked="Gender"和控制器中的$scope.Gender = 'M'

如果您不想在控制器中添加任何内容,请将代码包装在div中:

<div ng-init="Gender='M'"><label></label></div>

Plunkr: https ://plnkr.co/edit/i4WK990a8zHyYkoW8pIb ? p = preview

删除名称属性和ng-checked然后它工作正常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM