2017-06-02 121 views
0

我想使用dateFormat屬性作爲佔位符。我已經擴展了jQuery函數,但是在下面的演練中演示之後無法使用它。我錯過了什麼?jQuery-ui datepicker在擴展到添加佔位符後不工作

https://jsfiddle.net/yzk1avan/1/

$(document).ready(function() { 
    $(".datePicker").datepicker({ 
     dateFormat: 'dd/mm/yy', 
     placeholder: true 
    }); 
}); 

(function ($) { 
    $.fn.datepicker = function (options) { 
     var settings = $.extend({}, $.fn.datepicker, options); 
     return this.each(function() { 
      if (settings.placeholder === true) { 
       var dateFormat = settings.dateFormat; 
       var placeholder = dateFormat.replace(/y/gi, 'yy'); 
       $(this).attr('placeholder', placeholder); 
      } 
     }); 
    } 
}(jQuery)); 

感謝您的幫助。這裏 https://jsfiddle.net/yzk1avan/3/

回答

0

工作撥弄找到我的答案在這裏:How can I extend jQueryUI datepicker to accept an additional argument?

失蹤了這些作品的代碼:

VAR __picker = $ .fn.datepicker;

__picker.apply(this,[options]);

這裏的工作代碼:

var __picker = $.fn.datepicker; 

(function($) { 
$.fn.datepicker = function(options) { 

    __picker.apply(this, [options]); 

    var settings = $.extend({}, options); 
    return this.each(function() { 
    if (settings.placeholder === true) { 
     var dateFormat = settings.dateFormat; 
     var placeholder = dateFormat.replace(/y/gi, 'yy'); 
     $(this).attr('placeholder', placeholder); 
    } 
    }); 
} 
}(jQuery)); 

$(document).ready(function() { 
    $(".datePicker").datepicker({ 
     dateFormat: 'dd/mm/yy', 
     placeholder: true 
    }); 
});