JS 使用 IF 为 HTML 输入日期设置最小日期
JS set minimum date for HTML input date with an IF
抱歉我的错误,但我很菜鸟 :D
我必须使用 IF 在 HTML 的输入中设置最短日期:
如果今天是 > 01-06-2019 将最小设置为今天
否则将最小值设置为 01-06-2019
有谁能够帮我?这是我的代码:
function setMin1() {
var varData = new Date('01-06-2019'); //dd-mm-YYYY
var today = new Date();
today.setHours(0,0,0,0);
if(varData >= today) {
document.getElementById('set').min = '01-06-2019';
}
else {
document.getElementById('set').min = '<?php echo date('d-m-Y');?>';
}
}
我想你要找的是 setAttribute 方法:
document.getElementById('set').setAttribute('min', '01-06-2019');
它不会工作,因为您将字符串传递给您的输入。您输入的类型的编号。
您可以改用数据类型。
我猜输入的类型是 date。您可以使用 min 属性设置最小值,例如
<input type="date" name="someDate" min="2019-01-01">
请注意,在 HTML 中,ISO 8601 格式的日期将被视为本地日期,但当被内置的 ECMAScript 解析器解析时,将被视为 UTC。
如果您使用脚本设置该值,则需要主机系统的时钟是准确的。可以使用 setAttribute:
设置该值
window.onload = function(){
var d = new Date();
// Build ISO 8601 format date string
var s = d.getFullYear() + '-' +
('0' + (d.getMonth()+1)).slice(-2) + '-' +
('0' + d.getDate()).slice(-2);
// Set the value of the value and min attributes
var node = document.querySelector('input');
if (node) {
node.setAttribute('min', s);
node.setAttribute('value', s);
}
}
<form onsubmit="return false;">
<input type="date"><br>
<input type="reset">
</form>
抱歉我的错误,但我很菜鸟 :D 我必须使用 IF 在 HTML 的输入中设置最短日期: 如果今天是 > 01-06-2019 将最小设置为今天 否则将最小值设置为 01-06-2019 有谁能够帮我?这是我的代码:
function setMin1() {
var varData = new Date('01-06-2019'); //dd-mm-YYYY
var today = new Date();
today.setHours(0,0,0,0);
if(varData >= today) {
document.getElementById('set').min = '01-06-2019';
}
else {
document.getElementById('set').min = '<?php echo date('d-m-Y');?>';
}
}
我想你要找的是 setAttribute 方法:
document.getElementById('set').setAttribute('min', '01-06-2019');
它不会工作,因为您将字符串传递给您的输入。您输入的类型的编号。 您可以改用数据类型。
我猜输入的类型是 date。您可以使用 min 属性设置最小值,例如
<input type="date" name="someDate" min="2019-01-01">
请注意,在 HTML 中,ISO 8601 格式的日期将被视为本地日期,但当被内置的 ECMAScript 解析器解析时,将被视为 UTC。
如果您使用脚本设置该值,则需要主机系统的时钟是准确的。可以使用 setAttribute:
设置该值window.onload = function(){
var d = new Date();
// Build ISO 8601 format date string
var s = d.getFullYear() + '-' +
('0' + (d.getMonth()+1)).slice(-2) + '-' +
('0' + d.getDate()).slice(-2);
// Set the value of the value and min attributes
var node = document.querySelector('input');
if (node) {
node.setAttribute('min', s);
node.setAttribute('value', s);
}
}
<form onsubmit="return false;">
<input type="date"><br>
<input type="reset">
</form>