Jquery滑块小部件检索值并完成计算

时间:2015-06-18 09:12:26

标签: javascript jquery

我正在使用jquery UI的滑块,我想从多个滑块返回结果,以便我可以执行计算。

这是我到目前为止所做的,但我很难从功能中获得任何结果。

$(function() {
  var x
  $("#slider4").slider({
      value: 1,
      min: 0,
      max: 50,
      step: 5,
      slide: function(event, ui) {
          $("#items").val("$" + ui.value);

      }

  });
  $("#items").val("$" + $("#slider4").slider("value"));

 });

理想情况下,在函数之外我想添加类似于下面的多个滑块结果。

var z = x * y;

1 个答案:

答案 0 :(得分:0)

这是范围问题。

如果你有:

function foo() {
    var x = 1;
}

然后x只能在foo内访问。内联匿名函数的情况也是如此,就像你已经准备好了jquery doc一样。

相反,声明为您获取值的函数,例如:

function slider4value() {
    return $("#slider4").slider("value");
}

var z = slider4value() * slider5value();

或更一般地说:

function sliderValue(slider) {
    return $(slider).slider("value");
}

var z = sliderValue("#slider4") * sliderValue("#slider5");

另一种方法是使用全局变量,但一般不建议这样做,例如:

<script>
    var x;
    var y;
    $(function() {
        x = 1;
        y = 2;
    }

    function calc() {
        var z = x * y;
    }
</script>