js 禁用当前日期前的所有日期日期函数怎么写
在 JavaScript 中,可以使用 Date 对象来处理日期和时间。下面是一种实现禁用当前日期前的所有日期的方法:
// 获取当前日期
var currentDate = new Date();
// 获取当前日期的年、月、日
var currentYear = currentDate.getFullYear();
var currentMonth = currentDate.getMonth();
var currentDay = currentDate.getDate();
// 获取所有日期的元素
var dateElements = document.querySelectorAll('.date');
// 遍历所有日期元素
for (var i = 0; i < dateElements.length; i++) {
var dateElement = dateElements[i];
// 获取日期元素的值
var dateValue = new Date(dateElement.value);
// 获取日期元素的年、月、日
var dateYear = dateValue.getFullYear();
var dateMonth = dateValue.getMonth();
var dateDay = dateValue.getDate();
// 如果日期早于当前日期,则禁用该日期
if (dateYear < currentYear ||
(dateYear === currentYear && dateMonth < currentMonth) ||
(dateYear === currentYear && dateMonth === currentMonth && dateDay < currentDay)) {
dateElement.disabled = true;
}
}
在上述代码中,首先获取当前日期的年、月、日,然后通过 querySelectorAll() 方法获取所有日期元素的集合。接着,使用 for 循环遍历所有日期元素,并使用 new Date() 方法将日期字符串转换为日期对象。最后,通过比较日期元素的年、月、日和当前日期的年、月、日来判断是否禁用该日期。
请注意,上述代码假设日期元素的值是以字符串形式表示的日期,例如 <input type="date" class="date" value="2022-01-01">。如果日期元素的值是其他格式,需要相应地调整代码
原文地址: https://www.cveoy.top/t/topic/iqkW 著作权归作者所有。请勿转载和采集!