AngularJs无线电不会被绑定到范围

时间:2016-03-29 22:54:46

标签: javascript angularjs

我正在尝试将选定的单选按钮传递到范围,然后传递给服务器,但它没有通过。这是我的HTML代码:

<div class="form-group">
          <label class="control-label"> What product?</label>
            <div ng-repeat="type in typeProducts | orderBy:'name'">
                <input type="radio" ng-model="$parent.product_id" name="typeproduct" value="{{type.id}}"/>
                <label for="radio">{{type.name}}</label>
            </div>
        </div>

这是控制器:

$scope.createProduct = function() {
      Account.createProduct($scope.product)
        .then(function() {
          toastr.success('Product has been created');
        })
        .catch(function(response) {
          toastr.error(response.data.message, response.status);
        });
    };

错误发生在服务器端,因为数据库不接受空列

1 个答案:

答案 0 :(得分:1)

尝试将模型更改为具有id属性的对象,如下所示:

<input type="radio" ng-model="product.id" value="{{type.id}}" ng-/>
      <label for="radio">{{type.name}}</label>

您还需要在控制器中初始化$ scope.product

$scope.product = {};

或者如果你知道要选择的默认值是什么

$scope.product = {'id': 1};

以下是此工作http://codepen.io/mkl/details/xVLdjb/

的示例