我的php / html页面中有一个输入日期字段。在我的日期字段中,如果输入日期大于今天(sysdate),我需要抛出一个错误。可能吗?如果是的话请帮助。 这是我的输入字段的html脚本。另一个JavaScript也根据字段的输入日期工作,以自动识别截止日期。
<div class="form-group">
<div class="input-group col-sm-4">
<div class="input-group-addon">Transaction Date <i class="fa fa-calendar"></i></div>
<input id ="txndt" class="form-control" type="date" name ="purch_date" onblur = "txn40();" required />
</div>
</div>
答案 0 :(得分:2)
它也适用于java脚本。我从我的'form'中调用了一个java脚本。这是解决方案。它正如我所期望的那样工作。
表格
<form name="purchase" id ="purchase" method="post" action="" onsubmit="return checkform()">
<div class="form-group">
<div class="input-group col-sm-4">
<div class="input-group-addon">Transaction Date <i class="fa fa-calendar"></i></div>
<input id ="txndt" class="form-control" type="date" max="<?php echo date("Y-m-d")?>" name ="purch_date" value="<?php echo $query2['purch_date'] ?>" onblur = "txn40();" required />
</div>
</div>
</form>
Java脚本
<script type="text/javascript">
function checkform()
{
var dateString = document.purchase.txndt.value;
var myDate = new Date(dateString);
var today = new Date();
if (document.purchase.txndt.value == "")
{
//something is wrong
alert('REQUIRED FIELD ERROR: Please enter date in field!')
return false;
}
else if (myDate>today)
{
//something else is wrong
alert('You cannot enter a date in the future!')
return false;
}
// if script gets this far through all of your fields
// without problems, it's ok and you can submit the form
return true;
}
</script>
感谢大家的支持。
答案 1 :(得分:0)
您可以将valueAsDate
属性与当前日期进行比较。
document.querySelector('#txndt').onchange = function() {
if (this.valueAsDate > new Date) {
alert("You can't pick a future date!")
}
};
答案 2 :(得分:0)
使用&#39; max&#39;功能和&#39; php&#39;。在chorome浏览器中工作正常(支持HTML 5的浏览器)。使用以下内容更改输入。
<input id ="txndt" class="form-control" type="date" max="<?php echo date("Y-m-d")?>" name ="purch_date" onblur = "txn40();" required />