0

当用户输入今天之前的日期时,我试图向他们显示警告。发生这种情况时,我想显示这个 span 标签。我还需要检查跨度是否已经存在,所以我不再添加它。

这是我到目前为止所拥有的:

$('[name="input_name"]').blur(function(){
        var today = new Date();
        var hiredate = new Date(value);
        if (hiredate < today) {
        $(this).after("<span class='date_warning'>Warning hire</span>");
    }
    else{
        $('span').remove('.date_warning');
    }
});

有什么建议么?

4

3 回答 3

2

您需要使用this.value而不是value

改变

var hiredate = new Date(value);

var hiredate = new Date(this.value);
于 2012-12-21T06:02:22.250 回答
0

你可以这样做

$('[name="input_name"]').blur(function(){
        var today = new Date();
        var hiredate = new Date($(this).val());
        if (hiredate < today) {
        $(this).next('.date_warning').remove();
        $(this).after("<span class='date_warning'>Warning hire</span>");
    }
    else{
        $(this).next('.date_warning').remove();
    }
});

演示

尝试更改输入字段中的值

于 2012-12-21T06:02:38.407 回答
0

试试这个

$('[name="input_name"]').blur(function(){
    $('.date_warning').remove();
    var today = new Date();
    var hiredate = new Date(this.value);
    if (hiredate < today) {
        $(this).after("<span class='date_warning'>Warning hire</span>");
    }
});
于 2012-12-21T06:05:10.020 回答