使用角度ng-model,无法获得无线电的默认值

时间:2016-11-01 02:56:40

标签: angularjs angularjs-ng-model

当前表单提交时,单击时,可以获取该值的值,但无法获取单击,我已经设置了初始值

<form class="form-css" name="myForm" novalidate>
    <label class="ar-l" for="sex">sex:</label>
    <input ng-model="user.sex" type="radio" name="sex" value="2" ng-checked="true">
    <i class="ar-l">male</i>
    <input ng-model="user.sex" type="radio" name="sex" value="3">
    <i class="ar-l">female</i>                                          
    <input ng-model="user.sex" type="radio" name="sex" value="1">
    <i class="ar-l">Confidentiality</i> 
    <div ng-click="saveData(myForm,user)">submit</div>              
</form>

enter image description here

默认显示正确,但不是将表单提交到初始值的时间      //提交js代码

$scope.saveData = function(myForm, user) {
    console.log(user);    // undefined   
    KoudaidayService.saveUserMessage({sex: user.sex}).then(function(data) {
        something...
    });        
}

1 个答案:

答案 0 :(得分:2)

根据文件https://docs.angularjs.org/api/ng/directive/ngChecked

  

如果表达式在里面,则设置元素的checked属性   ngChecked是真的。

     

请注意,此指令不应与ngModel一起使用   这可能会导致意外行为。

要修复它,只需设置$ scope.user.sex的值,然后删除ng-checked