2017-02-20 57 views
0

我正在使用JSP和Angular JS。我有一個帶有隱藏輸入字段的JSP頁面。會話屬性設置爲其值如下。控制器中輸入的綁定值AngularJS

String policy = (String)session.getAttribute("POLICY_CHANGE"); 

    <input type="hidden" value="<%=policy%>" name="policy" ng-model="$scope.policyChange" /> 

我怎麼能輸入字段的值綁定到一個變量$ scope.policy在我的控制器。

JS

var app = angular.module('myApp', []); 
app.controller('myCtrl', function($scope) { 
    $scope.policyChange= ; // i want to bind the input field value here. 
}); 
+0

分享者,它正在運行? –

+0

[你的問題和我的答案](http://stackoverflow.com/questions/42300219/accessing-jsp-variable-from-javascript-angular-js/42302283#42302283)它不起作用? –

回答

0

爲此,您可以設置ng-model指令爲您input

<input type="hidden" value="<%=policy%>" name="ng2_session" ng-modal="vm.policyChange" ng-model="policy" ng-init="policy='<%=policy%>'" /> 

在你必須使用watch方法的控制器。

$手錶有助於監聽$範圍變化

JS

app.controller('myCtrl', function($scope) { 
    console.log($scope.policy); // i want to bind the input field value here. 
}); 

簡單的例子:

function MyCtrl($scope) { 
 
    $scope.$watch('policy', function() { 
 
     console.log($scope.policy); 
 
    }); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app> 
 
    <h2>Todo</h2> 
 
    <div ng-controller="MyCtrl"> 
 
     <input type="text" ng-model="policy" ng-init="policy='Bob'"/> 
 
    </div> 
 
</div>

注意:通常,watch方法它是非常有用的,當你想要運行some代碼時,$scope.variable它被改變。

相關問題