2017-06-06 73 views
0

我希望monthpicker在頁面加載時全部打開。並更改月份或年份它會自動更新爲標籤。我可以處理標籤更新事件等。保持MonthPicker使用jquery UI打開

但我希望它打開頁面上加載。 我正在關注這個答案: - https://stackoverflow.com/a/6013093/4952944

我試過了: - http://jqueryui.com/datepicker/#inline但它適用於我想使它適用於月和年選擇器的日期。

我試了一個演示,如果我我們與jQuery UI的分裂。

Date: <div id="datepicker"></div> 

我使用jQuery這樣的: -

$(function() { 
     $("#datepicker").datepicker(); 
}); 

它的工作原理日期選擇器打開內嵌和開放不斷。 但我想讓它在上面的代碼中工作。我試過所有的東西,比如在頁面加載時放置它。 我不確定但可能是由於某些更改事件,它不會在頁面加載時加載。

+0

http://jsfiddle.net/jTpUY/ 5/ –

+0

@PradeepSingh。不,它不工作。我們必須在頁面加載時打開月份選擇器。 – Bhavin

+0

http://jsfiddle.net/jTpUY/244/嘗試更新一個 –

回答

0

我得到了我的解決方案。在頁面加載隱藏日曆視圖。

$('.ui-datepicker-calendar').css('display','none'); 

而且我已根據自己的要求更改腳本。 但是,在頁面加載時要注意的兩件事隱藏日曆視圖。並使用下面的腳本時onChangeMonthYear事件被觸發,

setTimeout(function() { 
        $('.ui-datepicker-calendar').hide(); 
}); 

腳本: -

<script type="text/javascript"> 
    $(function() { 
     $(".monthPicker").datepicker({ 
      dateFormat: 'MM yy', 
      changeMonth: true, 
      changeYear: true, 
      showButtonPanel: true, 
      beforeShow: true, 
      onChangeMonthYear: function(dateText, inst) { 
       setTimeout(function() { 
        $('.ui-datepicker-calendar').hide(); 
       }); 
       var month = $(".ui-datepicker-month :selected").val(); 
       var year = $(".ui-datepicker-year :selected").val(); 
       alert(month); 
       alert(year); 
      } 
     }); 
     $(".monthPicker").focus(function() { 
      $(".ui-datepicker-calendar").hide(); 
      $("#ui-datepicker-div").position({ 
       my: "center top", 
       at: "center bottom", 
       of: $(this) 
      }); 
     }); 
    }); 
</script> 

HTML: -

<div class="monthPicker" id="month"></div>