3

如何以编程方式在 JQuery mobile 中设置滑块的值?我定义了以下滑块:

<label for="optionSlider">Are you sure?</label>
<select id="optionSlider" name="slider" data-role="slider">
  <option value="no">No</option>
  <option value="yes">Yes</option>
</select>

显示页面时,我想将其设置为“是”。我知道我可以使用“selected”属性,但是因为该值是动态的,我需要弄清楚如何以编程方式设置它。目前,我正在使用以下内容:

$("#myPage").live("pageshow", function () {
  var flag = "yes"
  if ((flag != null) && (flag != undefined)) {
    if (isTrackSet == "no") {
      $("#optionSlider", "#myPage").val("no");
    } else {
      $("#optionSlider", "#myPage").val("yes");
    }
  }
}

我究竟做错了什么?

4

3 回答 3

7

您需要在滑块上调用刷新:

.slider("refresh");

http://jquerymobile.com/demos/1.0a4.1/docs/forms/forms-slider.html

于 2012-07-28T15:34:48.980 回答
1

这对我有用

   <select name="slider" id="stopplay" data-role="slider">
     <option value="off">Play</option>
     <option value="on" >Stop</option>
   </select>

$("#stopplay").val('on').slider("refresh");
于 2013-05-21T07:20:22.387 回答
0

我尝试了许多不同的方法,但总是最终得到这个错误:

在初始化之前不能调用滑块上的方法

最后我发现这种方法可行:

  $('#member').page(); //the id of the page where the slider resides
  $('#slider').val(listsize); // setting the value from a localstorage item
  $('#slider').slider('refresh');
于 2019-11-03T11:14:15.947 回答