【发布时间】:2015-02-03 17:08:57
【问题描述】:
我是 JavaScript 开发的新手,我必须执行以下任务:我有 2 个 input 标记,其中包含 2 个表示日期的字符串,格式为 01/12/2014(日/月/年)。我使用这个输入标签来搜索具有在这些日期中的日期字段的对象。
<input type="hidden" size="9" class="impPrfTot" readonly="readonly"
onchange="cambioDataDa(this.value)"
name="dataDa" id="datada" value="<%=request.getSession().getAttribute("dataDa")%>"
style="font-size: 11px;color: #000000;">
<input type="hidden" size="9" class="impPrfTot" readonly="readonly"
onchange="cambioDataA(this.value); checkData(this.value)"
name="dataA" id="dataa" value="<%=request.getSession().getAttribute("dataA")%>"
style="font-size: 11px;color: #000000;">
<button class="dataDadataAButton" name="submitdataDadataA" onclick="sottomettiFormDataDaA(this)">Cerca</button>
最后我有一个 按钮 用于使用这个 JavaScript 提交这个表单:
function sottomettiFormDataDaA(obj) {
document.getElementById('dataDaAForm').submit();
}
我需要的是防止 dataA(英文 dateTo)输入中的值早于 dataDa 值(英文 dateFrom强>)。
我正在尝试做这样的事情:
-
JavaScript 在数据更改的 onchange 事件中调用并获取 dataA 字符串(tha 表示 dateTo 日期)并检查它是否在 dataA 之前(dateTo 日期) .
-
如果之前的检查为真,则日期范围无效,因此脚本会显示错误弹出消息并禁止提交具有 id="dataDaAForm" 的表单
function checkData(dataA) { dataDa = document.getElementById('dataDa').value; if(dataDa > dataA){ // SHOW A POPUP ERROR MESSAGE // DISALLOW THE FORM SUBMIT } }
但是我真的不知道要完成这个 JavaScript,我不知道它是否存在更好的解决方案来完成这个任务。
【问题讨论】:
-
如果你想使用jQuery检查datejs来比较日期,你可以使用
Date.compare ( Date date1, Date date2 ) -
我认为 datejs 不需要 jQuery。我使用的另一个很好的日期库是momentjs.com
-
@VDesign 使用库来完成这个简单的任务简直是荒谬的。输入前三思
标签: javascript jquery dom-events