2017-02-21 50 views
2

我無法弄清楚如何捕獲bootstrap-slider插件上的值變化。如何在Bootstrap-Slider插件中捕獲onChange值

閱讀文檔。嘗試了很多很多事情。

<div class="form-group"> 
    <label class="col-md-4 control-label" for="language_spanhish">Spanish</label> 
    <div class="col-md-6"> 
    <input id="language_spanish" type="text" data-provide="slider" 
     data-slider-ticks="[0, 1, 2]" 
     data-slider-min="0" 
     data-slider-max="2" 
     data-slider-step="1" 
     data-slider-value="0" 
     data-slider-tooltip="show" 
     onchange="alert('you changed it')" 
    /> 
    </div> 
</div> 

嘗試(沒有成功):

document.getElementById("#language_spanish").getAttribute("data-slider-value"); 
     var getIt = $('#language_spanish').data('slider').getValue(); 
     alert(getIt); 
spanish.on("slide", function(slideEvt) { console.log(slider.getValue()); alert(slideEvt.value); }); 
     $('#language_spanish').slider().on('slide', function(ev){ alert("I changed it") }); 

只是找那裏的人已經成功地抓獲滑塊值的變化。如果插件不支持捕獲值更改的功能,請回發。

一個控制檯日誌錯誤我從一些嘗試,得到的是:

未捕獲的ReferenceError:$沒有定義

+0

@YafimSimanovsky解決在這裏 - > http://stackoverflow.com/questions/38825650/seiyria-bootstrap-slider-getvalue-not-working!真棒。 –

回答

1

你嘗試

$('#language_spanish').on('input', function(ev){ alert("I changed it") }); 

對於Uncaught ReferenceError: $ is not defined可以繞過jQuery的(不測試):

var slider = document.getElementById("language_spanish") 
console.log("init : " + slider.value) 
slider.addEventListener('input', function(e){ alert("I changed it " + e.currentTarget.value + " === " + input.value) }); 
+0

尚未...但我現在@Arthur - 謝謝! –

+0

nope ...得到'未捕獲的ReferenceError:$未定義'錯誤再次@Arthur。 –

+0

將嘗試下一個建議 –

0

此解決方案需要jQuery 。

滑塊自帶事件處理程序,它不包含輸入,但包含「更改」。 https://github.com/seiyria/bootstrap-slider

$("#language_spanish").on("change", function(){ 
console.log("Changed"); 
}); 

如果你想獲得滑塊的新值,那麼。

$("#language_spanish").on("change", function(event){ 
console.log("Changed to ", event.value.newValue); 
}); 
相關問題