我有一个输入类型为“date”的表,其值是从数据库中获取的。输入已禁用,因此无法编辑。当日期在数据库中设置时一切都很好。但有时数据库中的值是空的。在这种情况下,输入未禁用,并且在控制台中我可以看到建议,该值必须采用 Yyyy/mm/DD 格式且不能为空。 有没有办法可以禁用输入日期并保持值 null?
谢谢
我能找到的唯一解决方案是使用 div 而不是 input,但在这种情况下我会失去日历功能,而我不希望这样。
您可以使用 JavaScript 来处理日期值可能为空的情况并确保输入保持禁用状态。
<input type="date" id="date_field" disabled>
<script>
const dateFromDatabase = null; // pass date from database here
const dateInput = document.getElementById('date_field');
// Set the value of the date input if the date is not null
if (dateFromDatabase) {
dateInput.value = new Date(dateFromDatabase).toISOString().split('T')[0];
}
// Ensure the input is disabled
dateInput.disabled = true;
</script>