2013-01-18 187 views
0
$(function() { 
     $('.Month-Picker').datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      showButtonPanel: false, 
      dateFormat: 'MM-yy', 
      onClose: function (dateText, inst) { 
       var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val(); 
       var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val(); 
       $(this).datepicker('setDate', new Date(year, month, 1)); 
       $("#<%=btnMonthYear.ClientID %>").click(); 
      }, 
      beforeShow: function (input, inst) { 
       if ((datestr = $(this).val()).length > 0) { 
        year = datestr.substring(datestr.length - 4, datestr.length); 
        month = jQuery.inArray(datestr.substring(0, datestr.length - 5), $(this).datepicker('option', 'monthNames')); 
        $(this).datepicker('option', 'defaultDate', new Date(year, month, 1)); 
        $(this).datepicker('setDate', new Date(year, month, 1)); 
       } 
      } 
     }); 
    }); 

我有一個jQuery日期選擇器,通過它可以選擇「Month-Year」,它可以很好地與除iPad以外的每個瀏覽器一起工作。請看附帶的圖像。 error with jQuery DatepickerjQuery datepicker不能與iPad一起工作

回答

1
var postForm = false; 

    $(function() { 
     $('.Month-Picker').datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      showButtonPanel: false, 
      dateFormat: 'MM-yy', 
      onChangeMonthYear: function() { postForm = true; }, 
      onClose: function (dateText, inst) { 
       var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val(); 
       var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val(); 
       $(this).datepicker('setDate', new Date(year, month, 1)); 
       $("#<%=btnMonthYear.ClientID %>").click(); 
      }, 
      beforeShow: function (input, inst) { 
       if ((datestr = $(this).val()).length > 0) { 
        year = datestr.substring(datestr.length - 4, datestr.length); 
        month = jQuery.inArray(datestr.substring(0, datestr.length - 5), $(this).datepicker('option', 'monthNames')); 
        $(this).datepicker('option', 'defaultDate', new Date(year, month, 1)); 
        $(this).datepicker('setDate', new Date(year, month, 1)); 
        postForm = false; 
       } 
      } 
     }); 
    }); 

    $(document).ready(function() { 
     $("#aspnetForm").click(function() { 
      if (postForm == true) { 
       postForm = false; 
       var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val(); 
       var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val(); 
       $(this).datepicker('setDate', new Date(year, month, 1)); 
       $("#<%=btnMonthYear.ClientID %>").click(); 
      } 
     }); 
    }); 
0

我建議你使用Chrome開發者工具(F12)

設置>覆蓋> 「用戶代理」 選擇的iPad。

Chrome和Safari都使用WebKit。您可以輕鬆模擬iPad並進行調試。

+0

即使使用這個,我不能重現一個問題,那是在ipad,safari和chome上。所以仿真不是100%正確的 – Miguel