日历代码:
<link rel="stylesheet" type="text/css" href="calendar/jscal2.css"/> <link rel="stylesheet" type="text/css" href="calendar/border-radius.css"/> <link rel="stylesheet" type="text/css" href="calendar/win2k.css"/> <script type="text/javascript" src="calendar/calendar.js"></script> <script type="text/javascript" src="calendar/lang/en.js"></script> <tr> <th>上线时间 :</th> <td><input type="text" name="subject[fromdate]" id="fromdate" value="" size="10" class="date" readonly> <script type="text/javascript"> Calendar.setup({ weekNumbers: true, inputField : "fromdate", trigger : "fromdate", dateFormat: "%Y-%m-%d", showTime: false, minuteStep: 1, onSelect : function() {this.hide();} }); </script></td> </tr> <tr> <th>下线时间 :</th> <td><input type="text" name="subject[todate]" id="todate" value="" size="10" class="date" readonly> <script type="text/javascript"> Calendar.setup({ weekNumbers: true, inputField : "todate", trigger : "todate", dateFormat: "%Y-%m-%d", showTime: false, minuteStep: 1, onSelect : function() {this.hide();} }); </script></td> </tr>
在IE下报Calendar未定义:
调用时在IE下报 “Calendar”未定义 的错误,致使日期控件无法使用
原因是由在IE下,calendar.js文件加载没有阻塞Calendar.setup()方法的运行,Calendar.setup()在calendar.js未加载的情况,就开始执行了,所以就报出“Calendar”未定义 的错误
解决办法:
找到phpcmsbs/class/form.class.php文件
在174到182行
Calendar.setup({ weekNumbers: ‘.$showweek.‘, inputField : "‘.$id.‘", trigger : "‘.$id.‘", dateFormat: "‘.$format.‘", showTime: ‘.$showsTime.‘, minuteStep: 1, onSelect : function() {this.hide();} }); 改成: $(function(){ Calendar.setup({ weekNumbers: ‘.$showweek.‘, inputField : "‘.$id.‘", trigger : "‘.$id.‘", dateFormat: "‘.$format.‘", showTime: ‘.$showsTime.‘, minuteStep: 1, onSelect : function() {this.hide();} }); });
PHPCMS里的日历插件及在IE下报Calendar未定义
时间: 2024-10-06 23:01:45