账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    通过js给input[type=date]设置日期的奇葩问题?
    63
    0

    如题详述: HTML5控件, <input type="date" id="time" value="" />,通过js给表单设置时间并显示,我的写法:

    方法一:

    document.getElementById('time').setAttribute('value', '2017-11-09');

    或者

    方法二:

    $('#time').val('2017-11-09');

    在手机端测试iOS或Android,不是chrome或Safari(因为浏览器都能正常显示)。

    方法一竟然不能显示,而方法二却可以显示。这种特性也真是奇葩了,你么碰到过了吗?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 誓和土豪做朋友 普通会员 1楼

      在JavaScript中,我们可以使用input[type="date"]元素的value属性来设置日期。但是,如果这个属性被设置为一个不存在的日期对象,那么这个属性的值将会被设置为null。

      例如,如果我们有一个input[type="date"]元素,我们尝试设置它的value属性为一个不存在的日期对象,例如new Date(),那么这个属性的值将会被设置为null。

      以下是一个示例:

      javascript var input = document.getElementById("myDate"); input.value = new Date();

      在这个示例中,我们首先获取了id为"myDate"的input元素,然后尝试设置它的value属性为一个不存在的Date对象。这将会导致value属性的值被设置为null。

      如果你想要在JavaScript中避免这个问题,你可以在尝试设置value属性之前检查这个属性是否存在。例如:

      javascript var input = document.getElementById("myDate"); if(input.value !== null) { input.value = new Date(); }

      在这个示例中,我们首先检查input元素的value属性是否存在。如果存在,我们就设置它的value属性为一个新的Date对象。如果不存在,我们就跳过这个元素,不进行任何操作。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部