WordPress ACF管理员日期选择器范围

WordPress ACF管理员日期选择器范围,wordpress,datepicker,advanced-custom-fields,Wordpress,Datepicker,Advanced Custom Fields,我在我的WordPress网站上使用高级自定义字段,我有一个日期选择器开始日期和结束日期,当选择一个时,我试图设置最小/最大。从jQuery的datepicker日期范围中,我尝试添加onClose选项 我目前有以下基于的代码,但它不工作 <?php function takeover_scripts() { ?> <script type="text/javascript"> (function($) { var startDate = $(

我在我的WordPress网站上使用高级自定义字段,我有一个日期选择器开始日期和结束日期,当选择一个时,我试图设置最小/最大。从jQuery的datepicker日期范围中,我尝试添加onClose选项

我目前有以下基于的代码,但它不工作

<?php function takeover_scripts() { ?>

  <script type="text/javascript">
    (function($) {

      var startDate = $('.acf-field-568d4b2968a3e');
      acf.add_filter('date_picker_args', function( args, startDate ){
        // do something to args
        args.changeMonth = false;
        args.onClose = function( selectedDate ) {
          $( ".acf-field-568d4bbd68a3f" ).datepicker( "option", "minDate", selectedDate );
        }
        // return
        return args;
      });

      var endDate = $('.acf-field-568d4bbd68a3f');
      acf.add_filter('date_picker_args', function( args, endDate ){
        // do something to args
        args.changeMonth = true;
        args.onClose = function( selectedDate ) {
          $( ".acf-field-568d4b2968a3e" ).datepicker( "option", "minDate", selectedDate );
        }
        // return
        return args;
      });

    })(jQuery); 
  </script>

<?php }

add_action('acf/input/admin_footer', 'takeover_scripts'); ?>

(函数($){
var startDate=$('.acf-field-568d4b2968a3e');
acf.add_filter('date_picker_args',函数(args,startDate){
//对args做点什么
args.changeMonth=false;
args.onClose=函数(selectedDate){
$(.acf-field-568d4bbd68a3f”).datepicker(“选项”,“minDate”,selectedDate);
}
//返回
返回args;
});
var endDate=$('.acf-field-568d4bbd68a3f');
acf.add_filter('date_picker_args',函数(args,endDate){
//对args做点什么
args.changeMonth=true;
args.onClose=函数(selectedDate){
$(“.acf-field-568d4b2968a3e”).datepicker(“选项”,“minDate”,selectedDate);
}
//返回
返回args;
});
})(jQuery);
我不确定是否需要以结束日期输入的id或字段号为目标,或者是否正确选择了开始日期字段。如果有人对此有任何经验,请让我知道我设置/选择的错误

以下是两个字段的标记:

<div class="acf-field acf-field-date-picker acf-field-568d4b2968a3e" style="width:25%;" data-name="start_date" data-type="date_picker" data-key="field_568d4b2968a3e" data-required="1" data-width="25">
    <div class="acf-label">
        <label for="acf-field_568d479e68a3b-0-field_568d4b2968a3e">Start Date <span class="acf-required">*</span></label>
    </div>
    <div class="acf-input">
        <div class="acf-date_picker acf-input-wrap" data-display_format="MM d, yy" data-first_day="0">
            <input id="acf-field_568d479e68a3b-0-field_568d4b2968a3e" class="input-alt" type="hidden" name="acf[field_568d479e68a3b][0][field_568d4b2968a3e]" value="">
            <input type="text" value="" class="input active hasDatepicker" id="dp1452127570218">
        </div>      
    </div>
</div>

<div class="acf-field acf-field-date-picker acf-field-568d4bbd68a3f" style="width:25%;" data-name="end_date" data-type="date_picker" data-key="field_568d4bbd68a3f" data-required="1" data-width="25">
    <div class="acf-label">
        <label for="acf-field_568d479e68a3b-0-field_568d4bbd68a3f">End Date <span class="acf-required">*</span></label>
    </div>
    <div class="acf-input">
        <div class="acf-date_picker acf-input-wrap" data-display_format="MM d, yy" data-first_day="0"><input id="acf-field_568d479e68a3b-0-field_568d4bbd68a3f" class="input-alt" type="hidden" name="acf[field_568d479e68a3b][0][field_568d4bbd68a3f]" value=""><input type="text" value="" class="input active hasDatepicker" id="dp1452127570219"></div>     
    </div>
</div>

开始日期*
结束日期*
谢谢


附言:我在ACF的支持上也找到了这个问题。

有点晚了,但我终于找到了答案

因此,需要在具有类
.hasDatepicker
的输入字段上调用
.datepicker()
函数,而不是在具有acf id的输入字段上调用

我有以下工作:

$('.acf-field-568d4b2968a3e').find('.hasDatepicker').datepicker('option', 'minDate', minDateVar );


希望这对别人有帮助

你把这个JavaScript放在哪里了?嗨,乔治,我更新后显示了
add\u action-acf/input/admin\u footer
。脚本正在运行,但似乎无法单独运行。即使我只针对一个字段,它仍然会将参数放在两个字段上。由于最后一个参数将
changemount
设置为
true
,因此它将同时设置为这两个参数,即使它只针对一个。同样地,
onClose
将为两者设置相同的值。如果我将
onClose
设置为运行
console.log('test')它将运行,但会同时分配给这两个。出于某种原因,它不允许我动态设置最小/最大日期。