0

当滑块更改时,我尝试获取当前 jQuery 滑块值并将其显示到文本字段中。但是 JS 中执行脚本的事件是什么?我有那个脚本:

function add_value_textarea(){
var sliderval = $("#slider").slider("value");
var txtarea = document.getElementById('mytextfield');
return txtarea.value = sliderval;
}

window.onclick = add_value_textarea;

当我单击文档中的所有位置时它起作用,但在单击滑块时不起作用。我知道我可以使用滑块 div 显示值,但我需要在文本字段中使用它。

4

3 回答 3

1

您正在寻找的是change滑块事件。

$( "#slider" ).slider({
  change: function( event, ui ) {
      $("#some").text(ui.value);
  }
});

用 html

<div id="slider"></div>

<input type="text" id="some"/>

演示

于 2013-03-29T13:16:09.903 回答
0

我想就是你要找的。在创建滑块时指定更改事件的侦听器(或之后,但我不知道为什么要这样做)。
此外,您使用 jQuery,因此您可以通过此侦听器更改所有内容:

function(e, ui) {
    $('#mytextfield').val(ui.value);
}
于 2013-03-29T13:17:34.903 回答
0
$( "#slider" ).slider({
slide: function( event, ui ) {
        $( "#mytextfield" ).val( ui.value );
      }
    });

slide 的不同之处在于文本框的值会随着您移动滑块(不释放它)而改变。如果您使用更改,则文本框的值将在您释放滑块时仅更改一次。

另一个区别是,如果您只是单击滑块(没有实际滑动它),滑动事件将不会触发,而更改事件会。

所以你有这两个选择。挑选 :)

于 2013-03-29T13:19:33.353 回答