«
PHP的INPUT赋值和默认值

时间:2022-1-25    作者:Thinkphp    分类: ThinkPHP


<script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script>
<script>
    // 原理: 
    // 1. J_endtime 获取到期时间的时间戳
    // 2. 将 J_endtime 转化为 datetime-local 格式,并赋值给 J_newtime 显示
    // 3. 检测 J_newtime 值是否有改动
    // 4. J_newtime 值有改动,则将其 value 转化为时间戳,并赋值给 J_endtime

    // 说明:

// newtime.val(getDateTime(endtime));

// newtime.val() 是给 newtime 进行赋值

// 值为 getDateTime(endtime);endtime 是获取的数据库的值;getDateTime 是格式化时间戳为 datatime-local
//这个 getzf 作用是给 1一位数的时间加个前导0,2022-1-26 改成 2022-01-26

    var times = $('.J_time');
    if (times.length) {
        $('.J_endtime').each(function() {
            var endtime = $(this).val();
            var newtime = $(this).parent().find('.J_newtime');
            newtime.val(getDateTime(endtime));
        });
    }

    $('.J_newtime').on('input propertychange', function() {
        var newtime = $(this).val().replace('T', ' ').replace(/-/g, '/');
        $('.J_endtime').val(Date.parse(newtime) / 1000);
    });
    // 将时间戳转化为 datetime-local 格式---------getzf(date.getSeconds()秒;
    function getDateTime(str) {
        var date = new Date(parseInt(str + '000'));
        return date.getFullYear() + '-' + getzf(date.getMonth() + 1) + '-' + getzf(date.getDate()) + 'T' + getzf(date.getHours()) + ':' + getzf(date.getMinutes());
    }
    // 两位数的前导零
    function getzf(num) {
        if (parseInt(num) < 10) {
            num = '0' + num;
        }
        return num;
    }
</script>

thinkphp