3

我需要一些关于 jQuery UI 滑块的帮助,我已经设置了初始值,但我似乎找不到在页面加载时显示它的方法。我还需要能够将两个滑块值调用到一个函数来进行计算,然后将其显示到屏幕上。

你可以在这里查看我的 Fiddle 测试 > http://jsfiddle.net/cC3Qh/

jQuery

$(function() {
    $( "#slider1").slider({ 
        max: 2500,
        value: 1000,
        slide: function( event, ui ) { $( "#slider-result1" ).html( ui.value ); },
        change: function(event, ui) { calPrice(ui.value); }
    });

    $( "#slider2").slider({ 
        max: 30,
        value: 12,
        slide: function( event, ui ) { $( "#slider-result2" ).html( ui.value ); },
        change: function(event, ui) { calDays(ui.value); }
    });
  });

  function calDays(sliderval){
    var day = sliderval;
    day = day * 100;
    document.getElementById('price2').innerHTML = day;
    var price = document.getElementById('price1').innerHTML;
    price = price * day;
    document.getElementById('price3').innerHTML = price;
  }

  function calPrice(sliderval){
    var price = sliderval;
    price = price * 100;
    document.getElementById('price1').innerHTML = price;
  }

谢谢。

4

2 回答 2

3

将此添加到您的就绪函数中:

// display slider value on load
$("#slider-result1").html($("#slider1").slider("value"));
$("#slider-result2").html($("#slider2").slider("value"));

// perform calculations on load
calPrice($("#slider1").slider("value"));
calDays($("#slider2").slider("value"));

http://jsfiddle.net/samliew/cC3Qh/1/

于 2013-02-14T06:59:54.713 回答
3

向滑块添加create事件处理程序:

$("#slider1").slider({
    max: 2500,
    value: 1000,
    slide: function (event, ui) {
        $("#slider-result1").html(ui.value);
    },
    change: function (event, ui) {
        calPrice(ui.value);
    },
    create: function (event, ui) {
        $("#slider-result1").html($(this).slider("value"));
    }
});
于 2013-02-14T07:09:59.940 回答