我是Angular的新手,我正在 MVC 做一个项目。我有一个部分容器,在_layout.cshtml页面中呈现。在部分容器内有一个按钮。当我单击按钮获取文本框的值时,值变为空白。 以下是代码
@section container{
<div ng-app="app" ng-controller="ctrl">
<button ID="btnNext" ng-click="test()"></button>
</div>
}
<div class="container" ng-app="app" ng-controller="ctrl">
<input id="txtCode" type="text" ng-model="tst.textbox"/>
</div>
以下是控制器中的代码
var app = angular.module('app', []);
app.controller("ctrl", ["$scope",
function ($scope) {
$scope.tst= {};
$scope.tst.textbox='';
$scope.test = function () {
alert($scope.tst.textbox);
//when I give something to textbox for alert it returns nothing
}
}]);
答案 0 :(得分:1)
问题是您在两个div中使用 same controller
,因此每当设置新控制器时,现有的 value gets cleared
。
您应该使用不同的控制器,或者对输入和按钮都有一个共同的 $scope context
。
如果您有两个 different $scope contexts
,那么您应该使用 service
在控制器之间共享变量。