2

如何记住 JQuery 滑块中的值并将它们设置为用户在页面更改时选择的值?

我正在使用 JQuery 滑块,当单击按钮时会加载一个新页面,并且这些滑块也在该页面上。当该页面加载时,我需要将滑块设置为与上一页中选择的值相同的值。当用户返回上一页时,我还需要保留这些值。

目前它只是重置回我设置的默认值。

我在按钮单击时将值存储在会话中

Session["TermYears"] = hdYears.Value.ToString();

但我不知道如何在使用 JQuery 加载页面时设置值。

我有一个隐藏的领域

<asp:HiddenField ID="hdCover" runat="server" />

我的代码如下

     $(function () {
      $("#coverAmountSlider").slider({
          range: "min",
          value: 150000,
          min: 5000,
          max: 1000000,
          step: 1000,
          slide: function (event, ui) {
              $("#amount").val("£" + ui.value);
              $("#hdCover").val(ui.value);
          }
      });
      $("#amount").val("£" + $("#coverAmountSlider").slider("value"));
      $("#hdCover").val($("#coverAmountSlider").slider("value"));


  });

如果可能,我想避免使用 cookie。

4

1 回答 1

3

我建议使用localStorage. 您可以非常轻松地使用 Javascript 设置/获取值。

也许尝试这样的事情:

// Set the localStorage value
$("#coverAmountSlider").slider({
    ... // Your current options
    stop: function (event, ui) {
        localStorage["sliderValue"] = ui.value;
    }
});

现在您可以从任何页面检索该值:

// Get the localStorage value from a different page
var sliderValue = localStorage["sliderValue"];

$("#differentSlider").slider("value", sliderValue);

localStorage浏览器兼容性(MDN):

  • 铬 4+
  • 火狐 3.5+
  • IE8+
  • 歌剧 10.40+
  • 野生动物园 4+
于 2013-02-15T15:42:51.633 回答