2015-09-07 56 views
0

我在我的html的页脚中有一个滑块。jQueryMobile中的Flipswitch给出初始化错误

<div data-role="footer" data-position="fixed"> 
    <div class="ui-grid-a"> 
     <div class="ui-block-a"> 
      <div class="ui-bar"> 
       <div data-role="fieldcontain"> 
        <label for="flip_repair">Repair Mode:</label> 
        <select id="flip_repair" name="flip_repair" data-role="slider" onchange="flip_repair_onchange(this.value)"> 
         <option value="off" selected>Off</option> 
         <option value="on">On</option> 
        </select> 
       </div> 
      </div> 
     </div> 
     <div class="ui-block-b"> 
      <div class="ui-bar">&nbsp;</div> 
     </div> 
    </div> 
</div> 

每次我想通过代码来处理它,我得到以下错误:

Error: cannot call methods on flipswitch prior to initialization; attempted to call method 'refresh' 

,因为它看上去一个共同的问题我已签其他职位。他们建议在使用JQM时使用document.pageinit而不是document.ready。我申请的是改变我的HTML,但我仍然得到错误:

$(document).on('pageinit', function() { 
    $('#flip_repair').prop('checked', true) 
    .flipswitch('refresh'); 
}); 

回答

0

它看起来像初始化这意味着在一开始给人一种默认值:

$("#flip_repair").prop("selectedIndex", 0); 
$("#flip_repair").slider("refresh"); 

然后,它像一个魅力。