尝试使用滑块来更改HTML中的文本字段值

时间:2016-06-17 14:02:09

标签: javascript jquery html slider textfield

我有一个滑块,它从文本字段中获取输入并相应地重置其位置;但是,我无法弄清楚如何执行以下操作:

  1. 使滑块条为范围内的任何值重新定位,而不仅仅是非小数输入。

  2. 使其在切换滑块时相应地更改文本字段值。

  3. 代码可以在下面找到。

    感谢任何帮助,谢谢!

    #ifndef C_HPP
    #define C_HPP
    
    //#include "B.h"
    //template <typename T>
    //class B;
    
    template <typename T, typename Function> 
    T C::F2(Function f, const T a, const T b) { return  f(a, b);}
    
    template <typename T> void C::init(List<T> l) {
        auto test = std::make_shared <B < T >> (0.0, F1<T>);
        l.push_back(test);
    }
    
    template <typename T> T C::F1(const T a, const T b) {  return F2(F3<T>, a, b);}
    template <typename T> T C::F3(const T a, const T b) {return a + b;} 
    
    #endif
    

2 个答案:

答案 0 :(得分:0)

  

我有一个滑块,它从文本字段中获取输入并重置它   相应的位置;

由于您使用的是parseInt并且需要parseFloat,因此我看不出这项工作的效果如何。无论如何,下面是你要求的:

$('#input').change(function() {
  $('#slider').val(parseFloat(this.value))
});
$('#slider').on("input change", function() {
  $('#input').val(this.value)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div>
  <input id="slider" type="range" min="0" max="2" step="0.001" />
  <input id="input" type="text" value="1" />
</div>

答案 1 :(得分:0)

您不需要使用parseInt(),因为两者都需要是字符串。

<div>
<input id="slider" type="range" min="0" max="2" step="0.001"/>
<input id="input" type="text" value="1"/>
</div>

<script>
    var slider = document.getElementById('slider');
    $('#input').change(function(){
        slider.value=this.value
    });
</script>