假设某个类似小部件的范围滑块绑定到一个2元素数组。此外,我希望在单独的文本字段中显示范围限制。如何做到这一点?
angular
.module('myApp', ['ui.slider']);
angular.module('myApp')
.controller('MyController', MyController);
function MyController() {
var vm = this;
vm.slider = [5,15];
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.4/jquery-ui.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="http://angular-ui.github.io/ui-slider/src/slider.js"></script>
<body ng-app="myApp">
<div ng-controller="MyController as vm">
<strong>Range slider:</strong>
<div ui-slider="{range: true}" min="1" max="20" step="1" ng-model="vm.slider"></div>
<strong>It's value is bound as an array:</strong><br>
<input type="text" ng-model="vm.slider" /><br>
<strong>How to bind sepately:</strong><br>
From: <input type="text" ng-model="vm.sliderfrom" /> To: <input type="text" ng-model="vm.sliderto" /><br>
</div>
</body>
我需要在每次限制更改和反转时更新数组。如何做到这一点?
您可以直接绑定数组元素
From: <input type="text" ng-model="vm.slider[0]" />
To: <input type="text" ng-model="vm.slider[1]" />
angular
.module('myApp', ['ui.slider']);
angular.module('myApp')
.controller('MyController', MyController);
function MyController() {
var vm = this;
vm.slider = [5, 15];
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.4/jquery-ui.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="http://angular-ui.github.io/ui-slider/src/slider.js"></script>
<body ng-app="myApp">
<div ng-controller="MyController as vm">
<strong>Range slider:</strong>
<div ui-slider="{range: true}" min="1" max="20" step="1" ng-model="vm.slider"></div>
<strong>It's value is bound as an array:</strong>
<br>
<input type="text" ng-model="vm.slider" />
<br>
<strong>How to bind sepately:</strong>
<br>From:
<input type="text" ng-model="vm.slider[0]" />To:
<input type="text" ng-model="vm.slider[1]" />
<br>
</div>
</body>