スライダーの値でテキストボックスを更新する jquery-ui スライダーがあります。
テキストボックスには ng-model があるため、コントローラーから値を取得できますが、スライダーを移動しても値は更新されません (値はテキストボックス内で視覚的に変化しますが、$scope.slider は同じままです)。
テキストボックス内の値を手動で変更すると、すべてが期待どおりに機能し、 $scope.slider の値が新しい値で更新されます。
スライダーにスコープの値も更新させる方法はありますか?
<input type="text" id="rent" ng-model="rent" style="border: 0; color: #f6931f; font-weight: bold;" />
<div id="slider-rent" style="width: 80%;"></div>
$("#slider-rent").slider({
range: false,
min: 0,
max: 20000,
step: 10,
value: 0,
slide: function (event, ui) {
$("#rent").val(ui.value);
}
});
$("#rent").val($("#slider-rent").slider("value"));
$("#rent").change(function () {
$("#slider-rent").slider("value", $("#rent").val());
});
(これは rtl スライダーです。これが値が負の理由です)