datepicker:使用下拉列表禁用日期?

datepicker : disable days using drop down list?

我有一个如下所示的下拉列表:

   <span id="billet">
      <select id="test">

          <option value="Option1">Option1</option>
          <option value="Option2">Option2</option>

       </select>
   </span>

还有这样的输入:

   <input type="text" class="datepicker" />

通过选择“选项 1”,我想从日期选择器中禁用周末。

通过选择“选项 2”,我想重新激活日期选择器中的所有日期。

这是我的 JS :

$("#billet").on('change', 'select', function() { 
     if($('#test').val() == 'Option1') {
      $('.datepicker').datepicker({
       beforeShowDay: $.datepicker.noWeekends
      });
     }
     else {
      $('.datepicker').datepicker();
     }
    });

注意:我使用 "span" 圈出我的 select 因为这个下拉列表是由 Ajax / PHP 动态创建的。

使用这个:

  $("#billet").on('change', function () {
                if ($('#test').val() == 'Option1') {
                    $('.datepicker').datepicker('option','beforeShowDay', $.datepicker.noWeekends);
                }
                else {
                    $('.datepicker').datepicker();
                }
            });

谢谢:)

给你:应该销毁它。

$("#test").change(function() {
  // remove destroy datepicker
  $('.datepicker').datepicker("destroy");
  if ($('#test').val() == 'Option1') {
    $('.datepicker').datepicker({
      beforeShowDay: $.datepicker.noWeekends
    });
  } else {
    $('.datepicker').datepicker();
  }
});
$("#test").trigger('change');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>

<span id="billet">
      <select id="test">

          <option value="Option1">Option1</option>
          <option value="Option2">Option2</option>

       </select>
   </span>

<input type="text" class="datepicker" />

参考:How do I *completely* remove a jQuery UI datepicker?

希望对您有所帮助。