0
$scope.$watch("checkbox", function(newVal, oldVal, scope) {
var newmax = calcNewMax();
var slider = angular.element(document.querySelector("#slider"));
var parent = slider.parent();
slider.remove();
var newSlider = '<md-slider id="slider" flex="100" class="md-warn" md-discrete ng-model="size" step="10" min="100" max="' + newmax + '" aria-label="rating"> </md-slider>';
parent.prepend($compile(newSlider)($rootScope));
$scope.size = 500;
});
我正在使用角度材質的md-slider
。 我真正想要的是通過複選框更新基於用戶選擇的滑塊的最大值。 我第一次嘗試爲max
屬性設置一個新值並不起作用(對aria-valuemax
也不起作用)。角度/角度材質:替換HTML滑塊不會更新其ng模型
因此,我決定刪除完整的滑塊並將其替換。 上面的代碼有效。
但什麼不起作用的是,當我添加新的滑塊,ng-model
,這是綁定到$scope.size
似乎不再同步(我有一個標籤綁定到該值,它不會更新)。當然$apply()
不起作用,因爲我已經在$watch
。
真棒@Patryk,我的失誤比較是通過'.attr(「max」,newmax)'添加最大值,它沒有發生在我身上我可以直接使用角度:)謝謝! – faboolous