如何将值从ng-model传递给控制器​​?

时间:2016-02-19 08:43:31

标签: javascript angularjs

我知道这一定非常简单,但作为初学者我正面临这个问题。我尝试过其他人提供的各种解决方案但无法解决这个问题。 如何将变量'lang'的值传递给控制器​​。

代码:

<body ng-controller = "MyCtrl">
<select ng-model="lang">
<option value="dutch">Dutch</option>
<option value="english">English</option>
</select>
</body>

控制器:

app.controller('MyCtrl',[$scope,function($scope){
console.log($scope.lang);
}]);

2 个答案:

答案 0 :(得分:1)

当您选择选项时,$ scope.lang将会更改。 (初始化未定义) 但是你想在lang改变之后解雇一些东西,应该使用$ watch。

$scope.$watch("lang",function (newValue, oldValue ) {
   console.log( "lang:", newValue );
}

http://jsfiddle.net/ms403Ly8/58/

使用ng-init http://jsfiddle.net/ms403Ly8/60/

答案 1 :(得分:0)

<强> HTML

if ( mesh ) {

    mesh.scale.x = ...

}

<强> JS

<select ng-model="lang" ng-change="dataChange(lang)">
    <option value="dutch">Dutch</option>
    <option value="english">English</option>
</select>