专注于输入并没有正常工作

时间:2014-05-19 09:58:03

标签: javascript jquery validation focus

我正在创建一个包含输入字段i的表单,我应该插入一个不应该优于当前日期的日期,否则将使用javascript显示消息错误。 这是我的js代码:

<script>
$( document ).ready(function() {
    $('#chevron1').change(function(){checkDate();});
    $('#chevron1').blur(function(){checkDate();});  
});

function checkDate() {
    //alert('aaaaaa');
    Nowdate = new Date();
    Nowdate.setHours(0);
    Nowdate.setMinutes(0);
    Nowdate.setSeconds(0);
    Nowdate.setMilliseconds(0);
    console.log("date du jour"+Nowdate)
    var dd=$("#chevron1").val();//format  0000-00-00 aaaa-mm-jj
    console.log("dddddddddddddd"+dd);
    var thedate=dd.split('-');
    var an=thedate[0];
    var mo=thedate[1];
    var jo=thedate[2];
    var dateinsere = new Date(jo,mo-1,an);
    console.log("ddobjeeeettttttt"+dateinsere);
    if ((dateinsere > Nowdate) && (dateinsere !=null)){ 
        error('F_PREL01_9_MSG');
        document.getElementById('chevron1').focus();    
        document.getElementById('chevron1').select();
        return false;   
    }
</script>

这是我的输入字段

<input id="chevron1" name="date" type="text" class="span12" value="<s:date name="date" format="dd-MM-yyyy"/>" />

我的问题是当我插入一个invali日期时,我得到了预期的对话框消息,但是当我点击确定时,由于焦点,此处的对话框仍未关闭。就像他在焦点上调用checkDate方法一样。 我需要在出现错误对话框并单击确定按钮时,输入字段将被聚焦并被选中,因此我无法在inserin alid date之前填写其他输入。

我该如何解决这个问题?

0 个答案:

没有答案