JQuery DatePicker - переопределить параметры из атрибута данных - PullRequest
9 голосов
/ 29 ноября 2011

Я использую эту разметку

<label> Date <input type="text" data-datepicker="{maxDate: '+1d'}" /></label>
<label> Another date <input type="text" data-datepicker="" /></label>
<script>
$('[data-datepicker]').each(function() {
      // init the options var with some default values (dateFormat etc)
      // that can be overridden by the data-datepicker values
      // also, new values can be added to the options from data-datepicker
      // such as in the above example "maxDate"
      var options = TODO;      

      $(this).datepicker(options);
});
</script>

Я действительно не знаю, с чего начать этот объект параметров .. Запуск со значениями по умолчанию кажется хорошим началом

var options = { dateFormat: 'yy-mm-dd }; 

Но тогда как мне добавить / перезаписать значения из атрибута данных .. Я просто не знаю

1 Ответ

12 голосов
/ 29 ноября 2011

С этой разметкой (вы должны отформатировать атрибут «data» так, чтобы они распознавались как объекты):

<label> Date <input type="text" data-datepicker='{"maxDate": "+1d"}' /></label>
<label> Another date <input type="text" data-datepicker='{ "dateFormat": "dd-mm-yy"}' /></label>

Вы можете сделать:

$('[data-datepicker]').each(function() {
    //standard options
    var options = { dateFormat: "yy-mm-dd"};   
    //additional options
     var additionalOptions = $(this).data("datepicker");
    //merge the additional options into the standard options and override defaults
    jQuery.extend(options, additionalOptions);


      $(this).datepicker(options);
});

скрипка здесь: http://jsfiddle.net/WrRte/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...