之所以说机缘巧合,意思是各种因素促成了这个事件,缺一不可。几个因素分别是:系统中的ie是ie6(具体的小版本之间的差别我不是很确定or清楚)、编写jsp页面且用开发工具自动生成的jsp源码、使用了WdatePicker.js这个时间控件、以及页面代码的一些书写顺序。
之所以说经典,很明显,从上面的巧合中可以看出来了,ie6绝对是经典了。
全部测试代码如下(除要引用的控件相关文件外)
复制代码 代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html>
<head>
<base href="<%=basePath%>"/>
<title></title>
<script src="/UploadFiles/2021-04-02/WdatePicker.js"></head>
<body></body>
</html>
运行访问就会发生如下情况:(注:要在特殊条件下哦!!!)
已知解决方案:
Method 1:去掉<base ……>代码,如果你用不到的话
Method 2:补全<base>的结束标签,必须在后添加</base>,而不是<base …… />
Method 3:将<base ……>代码放到<script src="/UploadFiles/2021-04-02/WdatePicker.js">
PS&注意:ie6缓存方面问题比较严重,测试时需要及时清理下临时文件,不然会让你产生幻觉的!!!
具体原因?我怎么知道…… 我只是了解到了表面问题罢了,网上有大神们的相关文章,可以根据本文提到的一些关键字搜索下,靠你了!!!