首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >输入NoUISlider绑定

输入NoUISlider绑定
EN

Stack Overflow用户
提问于 2018-06-10 11:56:37
回答 1查看 1.5K关注 0票数 1

我使用noUISlider允许用户输入号码。它运行良好,但现在我想添加一个输入,以便能够更新nouislider的值,而不需要拖动它。但有些我却无法让它发挥作用。下面是我的代码的外观:

代码语言:javascript
复制
  <div class="col-sm-1">
      <input type="number" min="1" max="24" step="1" class="form-control input-sm" name="pointstopredicts" id="pointstopredicts" value="10" required="true" />
   </div>
   <div class="col-sm-9">
      <div id="rangesliderPP"></div>
   </div>

下面是我的JS代码:

代码语言:javascript
复制
<script>
   var skipSlider3 = document.getElementById('rangesliderPP');
   var pointstopredicts = document.getElementById('pointstopredicts');
   noUiSlider.create(skipSlider3, {
     start: [ 6 ],
     connect: 'lower',
      range: {
        'min': 1,
        'max': 24
      }
   });
   skipSlider3.noUiSlider.on('update', function( values, handle ) {
        var value = values[handle];
      pointstopredicts.value = Math.round(value);
     });

     pointstopredicts.addEventListener('change', function(){
        skipSlider3.noUiSlider.set([null, this.value]);
      });
 </script>

当我更改输入值时,我可以看到更改事件触发器,但也会触发nouislider的update事件,从而使输入返回到原来的值。根据nouislider的文档,set事件不应该触发Update事件。我是不是错过了什么。

JS Fiddle:https://jsfiddle.net/rehanazher/8bcx0uvp/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-10 20:33:12

将值设置为滑块时删除“null”。

应该是这样的:

代码语言:javascript
复制
   noUiSlider.create(skipSlider3, {
     start: [ 6 ],
     connect: [true,false],
     step: 1,
      range: {
        'min': 1,
        'max': 24
      }
   });
   skipSlider3.noUiSlider.on('update', function( values, handle ) {
        var value = values[handle];

      pointstopredicts.value = Math.round(value);
     });

     pointstopredicts.addEventListener('change', function(){
        skipSlider3.noUiSlider.set([ this.value]);
      });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50783433

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档