数据库值不反映到jQuery UI滑块

时间:2012-12-19 05:34:47

标签: jquery ruby-on-rails jquery-ui-slider

我在我的rails应用程序中使用jQuery UI Slider

因此,在提交表单时,我试图在我的数据库中存储jQuery UI Slider的值。

我的代码如下:

  <div>
    <p>
      <%= f.label(:amount, 'Amount') %>
      <div id="slider"></div>
      <%= f.text_field(:amount, :maxlength => 3, :size => 2) %>
    </p>
  </div>

滑块的以下jquery:

  $(function() {
    $("#slider").slider({
      range: "max",
      min: 0,
      max: 10,
      value: 0,
      slide: function(event, ui) {
        $("#amount").val(ui.value);
      }
    });
    $("#amount").val($("#slider").slider("value"));
  }); 

以上所有代码都运行正常。但是当我再次编辑我的页面时,显示滑块最小值(即0)而不是数据库中的值。那么我该如何实现呢?

1 个答案:

答案 0 :(得分:3)

我认为问题在于您在初始化滑块时将value设置为0。请尝试使用此代码,我还没有尝试过,但重点是除非您希望滑块在加载时始终设置为0,否则您必须更改初始化程序的参数value

$(function() {
    $("#slider").slider({
      range: "max",
      min: 0,
      max: 10,
      value: $("#amount").val(),
      slide: function(event, ui) {
        $("#amount").val(ui.value);
      }
    });
    $("#amount").val($("#slider").slider("value"));
  });