有人帮我写了一个函数,用于在有人点击日期之后为jquery datepicker显示一行文本(最好是通过显示css类)吗?
如果选择的日期介于今天和今天的21天之间,则必须出现通知。
这是我需要帮助的功能,因为我不知道如何写它。
<script>
$(function() {
$( "#delivery_date" ).datepicker({
dateFormat: "dd/mm/yy",
});
});
</script>
<input type="text" id="delivery_date" name="delivery_date" required />
答案 0 :(得分:2)
您可以使用date.js验证它,它有一个流畅的API,可以很容易地表达您的条件。
示例代码可能是:
var enteredDate = $("#delivery_date").prop("value");
var parsed = Date.parse(enteredDate);
var start = Date.today();
var end = Date.today().add(21).days();
if (!parsed.between(start, end)) {
alert("Date is valid");
} else {
alert("Date is not valid");
}
答案 1 :(得分:1)
你可以在datepicker中使用onClose
$(function() {
$( "#date" ).datepicker({
dateFormat: "dd/mm/yy",
onClose: function() {
valid();
}
});
});
答案 2 :(得分:0)
在初始化datepicker时使用onSelect
属性
$( "#delivery_date" ).datepicker({
dateFormat: "dd/mm/yy",
minDate : new Date(),
onSelect: function(str) {
var lastDate = new Date(),
nums = str.split("/"),
userDate = new Date(nums[2], nums[1]-1, nums[0]), // reverse date
period = 21;
lastDate.setDate(lastDate.getDate()+period);
if (userDate<lastDate) {
// notify
alert("inside 21 days period");
}
}
});
尝试 FIDDLE