设置范围输入值不起作用

时间:2018-01-28 12:41:46

标签: angularjs

HTML

var line = d3
    .line()
    .x(function (d) { return x(d.date); })
    .y(function (d) { return y(d.price); })
    .curve(d3.curveNatural);

控制器:

 <input type="text" ng-model="connector_form.a" class="form-control col-md-7 col-xs-12"  placeholder="{productname}">

不适合我。

将其更改为:

HTML

$scope.connector_form.a = "test;

控制器:

 <input type="text" ng-model="connector_form" class="form-control col-md-7 col-xs-12"  placeholder="{productname}">

有效。

可能是一个新手问题,但我找不到答案。

2 个答案:

答案 0 :(得分:3)

你需要一个空对象

$scope.connector_form = {};

然后

$scope.connector_form.a = "test;

否则 $scope.connector_form 将被取消定义

答案 1 :(得分:0)

AngularJS将从ng-model指令创建属性,但只能将其添加到现有对象中。

如果$scope.connector_form不存在,则无法附加a属性。因此,您必须在控制器中的某处声明$scope.connector_form

angular.module('appModule', [])
.controller('myController', function($scope) {
    $scope.connector_form = {};
});

或者,设置初始值:

angular.module('appModule', [])
.controller('myController', function($scope) {
    $scope.connector_form = {
        a: 'default value';
    };
});