比较两个时间的函数实现

代码如下

 <td>
                            <s:text name="label.Sampling.text.Date"/>
</td>
<td>
                            <s:text name="label.Sampling.text.supplierProductCode"/>
</td>
<td>
                            <s:textfield name="sample.date" id="date" cssStyle="xx" readonly="true"  cssClass="xx" maxLength="7"/>
</td>
<td>
                            <s:textfield name="sample.product_code" cssStyle="xx"  id="supplierProductCode" readonly="true" cssClass="xx" maxlength="18"/>
</td>

图片说明
如果code的输入时间小于Date的输入时间,弹出一个错误提示框.这个函数具体代码怎么编写呢?

既然你什么都是大概

那也只能给你个大概的回答

http://bbs.csdn.net/topics/370038726

再说文本框还是只读的。你是不是贴错了。

你贴的代码不全,只有一个时间,product_code又不是时间




onblur的时候js检查下,不懂你的date输入格式是什么样的,下面是以2015-1-26这种形式的,如果其他的注意修改正则和split分隔符号

 <s:textfield name="sample.product_code" cssStyle="xx"  id="supplierProductCode" readonly="true" cssClass="xx" maxlength="18" onblur="checkDate(this)"/>

<script>
    function checkDate(code) {
        var rx = /^\d{4}-\d{1,2}-\d{1,2}$/;//注意这里
        if (!rx.test(code.value)) { alert('请输入正确的code格式!'); code.select(); return false }
        var tr = code.parentNode.parentNode, cellIndex = code.parentNode.cellIndex;
        var date = tr.cells[cellIndex - 1].getElementsByTagName('input')[0]; //得到同一行的date控件
        if (!rx.test(date.value)) { date.select(); alert('请输入正确的date格式!'); return }

        var arrdate = date.value.split('-'), arrcode = code.value.split('-'); ////注意这里

        var dDate = new Date(parseInt(arrdate[0], 10), parseInt(arrdate[1], 10) - 1, parseInt(arrdate[2], 10)),
        dCode = new Date(parseInt(arrcode[0], 10), parseInt(arrcode[1], 10) - 1, parseInt(arrcode[2], 10));
        if (dCode < dDate) {alert('Code不能小于date');}
    }
</script>