首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery价格滑块筛选器值

jQuery价格滑块筛选器值
EN

Stack Overflow用户
提问于 2013-12-09 11:16:29
回答 2查看 16.4K关注 0票数 4

我已经创建了一个jQuery价格滑块,但我不确定如何让过滤器区域从实际价格范围开始?目前它有'$object Object - $object Object‘,而我希望它有'$299 - $1099’这样的东西。一旦你开始移动滑块选择器,对象引用就会被正确的价格所取代,但我希望过滤器区域从一开始就有正确的范围。

HTML:

代码语言:javascript
复制
<div id="slider-container"></div>
<p>
<label for="amount">Price range:</label>
<input type="text" id="amount" style="border: 0; color: #f6931f; font-weight: bold;" />
</p>
<div id="computers">
<div class="system" data-price="299">div1 -  299</div>
<div class="system" data-price="599">div2 -  599</div>
<div class="system" data-price="1099">div3 -  1099</div>
</div>
<div id="slider-range"></div>

JavaScript:

代码语言:javascript
复制
  $(function() {
    $('#slider-container').slider({
        range: true,
        min: 299,
        max: 1099,
        values: [299, 1099],
        slide: function(event, ui) {
            $( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
            var mi = ui.values[ 0 ];
            var mx = ui.values[ 1 ];
            filterSystem(mi, mx);
        }
    });
  $( "#amount" ).val( "$" + $( "#slider-range" ).slider( "values", 0 ) +
  " - $" + $( "#slider-range" ).slider( "values", 1 ) );
});

function filterSystem(minPrice, maxPrice) {
$("#computers div.system").hide().filter(function() {
    var price = parseInt($(this).data("price"), 10);
    return price >= minPrice && price <= maxPrice;
}).show();
}

我的结构基于以下代码:http://jsfiddle.net/bZmJ8/32/

任何帮助都是非常感谢的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-09 11:27:46

create选项是设置初始值的合适位置

代码语言:javascript
复制
$(function () {
      $('#slider-container').slider({
          range: true,
          min: 299,
          max: 1099,
          values: [299, 1099],
          create: function() {
              $("#amount").val("$299 - $1099");
          },
          slide: function (event, ui) {
              $("#amount").val("$" + ui.values[0] + " - $" + ui.values[1]);
              var mi = ui.values[0];
              var mx = ui.values[1];
              filterSystem(mi, mx);
          }
      })
});
票数 3
EN

Stack Overflow用户

发布于 2013-12-09 11:20:41

将此代码添加到JS的底部

代码语言:javascript
复制
$(document).ready(function() {
   $('#amount').val('\$299 - \$1099');
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20462516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档