• IOS safari 浏览器 时间乱码(ios时间显示NaN) 问题解决


    问题一:

    项目中遇到一个关于日期时间在ios中乱码在安卓中安然无恙的问题,焦躁了半天

    问题如上图,通过用户选择的时间和当天的天数相加然后在ios上就是乱码

    这个界面运用了日期类型的计算,当我们用JavaScript实例化一个日期对象时,我们可以这样用:

    var date =new Date();

    上面这段代码是获取当前日期,这段代码在Firefox、Chrome、Safari浏览器中都可以运行。但是如果我想根据字符串获取日期,问题就来了。看下面代码。

    var date =new Date("2016-05-31 08:00");  

    这段代码是获得字符中指定的日期,它Firefox、Chrome中就能运行,但是放在Safari就会报错,错误是NaN,意思是Not a Number。就是因为这个错,苹果手机不能正常运行这个界面,当时都快郁闷死了不是取值就是赋值,要不就是计算,如今IOS不支持。。。。。。。

     在网上找了一下,将代码这样写就好了:

    var date =new Date("2016/05/31 08:00");  

    这样Android和IOS就能共用了,写了个函数,替换一下!

    function GetDateDiff(startDiffTime, endDiffTime) {  
                //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式   
                startTime = startDiffTime.replace(/-/g, "/");  
                endTime = endDiffTime.replace(/-/g, "/");  
    };  

    出现乱码的代码

    改完后正常的代码

    问题二:

    HTML5中新增了日历控件,如果将控件的type=“datetime-local”,如果是Chrome,控件的日期显示格式是2016/05/30 08:00 ,如果是Safari,日期的显示格式是:2016-05-31T08:00,当我们用jQuery取值赋值的时候,就必须用这种方式才能赋值:假如说这个日历控件的id是timeDate,代码如下:

    $("#timeDate').val("2016-05-30T08:30");

    用$("#timeDate').val("2016/05/30 08:30");就会报错

  • 相关阅读:
    python-scapy学习笔记-(1)
    python系统性能模块笔记
    Python爬虫总结
    pm2的的常用命令及用法
    Javascript的map与forEach的区别
    对MVVM思想的在认识
    RN的打包
    undefined与null的区别
    rem与em的区别
    JS的函数参数传递为值传递
  • 原文地址:https://www.cnblogs.com/colaman/p/6650890.html
Copyright © 2020-2023  润新知