html和js和jquery写前端一个下拉选择框、两个时间选择器,根据下拉选择框选中为短假,则第二日期选择器的选择范围为一个个时间选择器的后3天
时间: 2023-06-25 10:05:44 浏览: 277
下面是一个简单的代码示例,其中使用了HTML、JavaScript和jQuery来创建一个下拉选择框和两个时间选择器,并根据下拉选择框的选项动态更新第二个时间选择器的可选日期范围:
```html
<!DOCTYPE html>
<html>
<head>
<title>下拉选择框和时间选择器</title>
<meta charset="UTF-8">
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
// 初始化日期选择器
$( "#start-date" ).datepicker();
$( "#end-date" ).datepicker();
// 监听下拉选择框的选中项变化事件
$("#vacation-type").change(function() {
// 如果选中的是短假,则更新第二个日期选择器的可选日期范围
if ($(this).val() === "short") {
var startDate = $( "#start-date" ).datepicker("getDate");
var endDate = new Date(startDate.getTime() + 3 * 24 * 60 * 60 * 1000);
$( "#end-date" ).datepicker("option", "minDate", endDate);
} else {
$( "#end-date" ).datepicker("option", "minDate", null);
}
});
});
</script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
</head>
<body>
<label for="vacation-type">请选择假期类型:</label>
<select name="vacation-type" id="vacation-type">
<option value="long">长假</option>
<option value="short">短假</option>
</select>
<label for="start-date">请选择开始日期:</label>
<input type="text" id="start-date" name="start-date">
<label for="end-date">请选择结束日期:</label>
<input type="text" id="end-date" name="end-date">
</body>
</html>
```
在这个示例中,我们使用了jQuery UI库中的`datepicker()`方法来创建日期选择器。我们首先在`$(document).ready()`函数中调用`datepicker()`方法来初始化第一个和第二个日期选择器。然后,我们使用`$("#vacation-type").change()`方法来监听下拉选择框的选中项变化事件。如果选中的是短假,我们从第一个日期选择器中获取选中的日期,然后计算出第二个日期选择器的可选日期范围,并使用`$( "#end-date" ).datepicker("option", "minDate", endDate)`方法来更新第二个日期选择器的最小可选日期为计算出的日期。如果选中的不是短假,则将第二个日期选择器的最小可选日期重置为null。
阅读全文