我有一个下拉列表,如下所示:
<span id="billet">
<select id="test">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
</select>
</span>
这样的输入:
<input type="text" class="datepicker" />
选择&#34; option1 &#34;,我想禁用datepickers的周末。
选择&#34; option2 &#34;,我想重新启动来自datepickers的所有日子。
这是我的JS:
$("#billet").on('change', 'select', function() {
if($('#test').val() == 'Option1') {
$('.datepicker').datepicker({
beforeShowDay: $.datepicker.noWeekends
});
}
else {
$('.datepicker').datepicker();
}
});
&#13;
注意:我使用&#34; span&#34;圈选我的选择因为这个下拉列表是由Ajax / PHP动态创建的。
答案 0 :(得分:1)
你在这里:应该销毁它。
$("#test").change(function() {
// remove destroy datepicker
$('.datepicker').datepicker("destroy");
if ($('#test').val() == 'Option1') {
$('.datepicker').datepicker({
beforeShowDay: $.datepicker.noWeekends
});
} else {
$('.datepicker').datepicker();
}
});
$("#test").trigger('change');
&#13;
<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" />
&#13;
参考:How do I *completely* remove a jQuery UI datepicker?
希望这有帮助。
答案 1 :(得分:0)
使用此:
$("#billet").on('change', function () {
if ($('#test').val() == 'Option1') {
$('.datepicker').datepicker('option','beforeShowDay', $.datepicker.noWeekends);
}
else {
$('.datepicker').datepicker();
}
});
谢谢:)