我想创建一个带有输入字段的范围滑块来直接输入值(如在 jQM 中:http ://demos.jquerymobile.com/1.4.4/slider/ )。
我的指令如下所示:
app.directive("mySlider", [function () {
return {
restrict: "E",
replace: true,
scope: {
id: "@?",
min: "@",
max: "@",
step: "@?",
value: "=ngModel"
},
template: "" +
"<div class='my-sliderWrap'>" +
"<input type='number' min={{min}} max={{max}} step={{step}} value={{value}} ng-model=value>" +
"<input type='range' min={{min}} max={{max}} step={{step}} value={{value}} ng-model=value>" +
"</div>",
link: function ($scope, $element, $attrs) {
//some logic here
}
}
}]);
好吧,当我更改数字输入的值时,这很有效。滑块移动并且值属性都被更新。只要我直接移动滑块,两个值属性都会更新,但我的数字输入文本会以某种方式被清除并设置为最小值。
我在模板中或数据绑定中犯了一些错误吗?