使用jQuery获取输入datetime-local的值

时间:2014-03-27 13:23:32

标签: jquery datetime input

我有一个输入类型文字:

<input type="text"
        name="rif_p_<?=$rif['code']?>"
        id="rif_p_<?=$rif['code']?>" />

还有一个日期时间本地

<input type="datetime-local"
       name="rif_from_<?=$rif['code']?>"
       id="rif_from_<?=$rif['code']?>" />

jQuery的:

$('[id^=rif_p_]').on('keyup change', function(){
    var value = $(this).val();

    alert(value);  /* alerts correctly the value */
});


$('[id^=rif_from_]').on('keyup click change', function(){
    var value = $(this).val();

    alert(value);  /* alerts '' */
});

现在,文本输入的第一个警报正确警告用户在字段上输入的值; datetime-local值始终为空。

为什么呢?

谢谢

注意:显然此警报仅用于测试目的

修改

好的我找到了解决方案,如果完整的日期/时间不是,则选择val为空。

现在这是我完整的jQuery函数,它在我完全插入日期/时间之前更新了值。使用文本可以正常工作,那么我如何更正它以使用日期时间?

$('[id^=rif_from_]').on('keyup click change', function(){

    var rif_id = $(this).attr('id').split('_');

    var id = rif_id[2];
    var value = $(this).val();

    /* This also updates the corrent editing element! So with datetime = '' */
    $('[id$=_from_'+id+']').val(value);
});

0 个答案:

没有答案