怎么在IE显示NaN,在谷歌浏览器显示正常

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在IE显示NaN,在谷歌浏览器显示正常相关的知识,希望对你有一定的参考价值。

参考技术A 早期的IE下不支持new Date()的代参数调用 方式 。解决方式:
1
2
3
4
5
6
7
8
9
10
function NewDate(str)

str=str.split('-');
var date=new Date();
date.setUTCFullYear(str[0], str[1]-1, str[2]);
date.setUTCHours(0, 0, 0, 0);
return date;

// 调用 其中的- 可以自行换成其它
var date = new Date("2011-11-07");
参考技术B 是IE没有相关属性吗?

IE11 400错误,谷歌火狐edge正常显示

今天发现个问题,做的项目在谷歌、火狐、edge上正常显示及跳转,但IE11上就会报下面几个错:

1:400错误

2:HTML5 DOCTYPE 无效 <!DOCTYPE >错误

3:dom-DOM7011:禁用了反向和正向缓存

搜索了这3个错误,发现2.3都不符合我的报错原因,

然后参考《Ie浏览器请求400错误,谷歌火狐等浏览器正常请求》https://blog.csdn.net/guanfengliang1988/article/details/73321358/这篇帖子,对项目进行修改,解决了问题。

此处引用原文:

location.href="请求的url"在其它浏览器上是可以正常请求的.但是在ie浏览器上确出现奇怪的http请求400错误,我们先来对于http400状态的描述:当用户在打开网页时,返回给用户界面带有400提示符的页面。其含义是你访问的页面域名不存在或者请求错误,自己的本地,肯定没问题.那就是请求错误了.几经尝试发现是参数带中文的会出现此种情况,没带中文的没有问题.

解决方法:

      1.js编码encodeURI(encodeURI(URL)),编码两次
      2.服务器端解码 URLDecoder.decode(request.getParameter("para"),"UTF-8")

在我的JS里,只将会出现中文的参数,进行了编码:

window.location.href
    = "index?code="+Id+"&name="+encodeURI(encodeURI(name))+"&begDate="+begDate+"&endDate="+endDate;
controller层:
@RequestMapping("/index")
public ModelAndView index(HttpServletRequest request,HttpServletResponse response)
  String name = request.getParameter("name");
  if (null != name)
    try
        name = URLDecoder.decode(request.getParameter("name"),"UTF-8");
    catch (UnsupportedEncodingException e)
        e.printStackTrace();
   
 

name传参在地址栏显示的是加密过的:%25E6%2596%25B0%25E7%2596%2586%25E5%2585%25AC%25E5%258F%25B8 如这段,经过URLDecoder.decode解密,可得中文参数

 
--------------------- 
作者:tornado430 
来源:CSDN 
原文:https://blog.csdn.net/tornado430/article/details/82706374 
版权声明:本文为博主原创文章,转载请附上博文链接!

以上是关于怎么在IE显示NaN,在谷歌浏览器显示正常的主要内容,如果未能解决你的问题,请参考以下文章

bootstrap栅格显示不同在不同浏览器,在火狐正常在谷歌 IE不正常?

iframe在谷歌浏览器中与在ie、火狐中显示不一致问题!

iframe 在谷歌浏览器中显示一大片空白

angular js 的路由怎么在谷歌浏览器中不能用

Twitter Bootstrap 导航分隔线无法在谷歌浏览器上正常工作

怎样解决IE和谷歌的样式兼容问题