调试aspx网页遇到的一个问题搞的心情很不爽
aspx网页是一个查询条件的设置页面,我使用了一个js文件,里面写有一个显示日历的脚本,在aspx页面上点击输入框,显示出日历,让用户来选择起止日期。
这个页面是一个完全没问题的页面,原来在asp下已经实现了。所以我就直接粘贴过来,结果运行不正确,提示好多变量未定义,而且提示缺少对象的错误。搞了一上午都没有成功,由于是原来运行正常的页面,现在老调试不出来,因此很是不爽。
下午在狂怒之下,发誓一定要搞定他。就开始一个一个的查找未定义变量的问题,结果发现全部是在js文件里,由此开始怀疑js文件没有发挥作用,也就是说这个项目中根本没有承认js文件的存在。经过反复试验,证实了自己的猜测,js文件无论是直接拷贝到项目目录下,还是在项目中先建立js文件然后再写内容,js文件都不被项目所认可,调用js中的方法等均会提示错误。
通过上网搜索,找到如下解决方法:
1、采用服务器端包括语法,将原先的js文件改后缀名为inc文件,在aspx文件中要调用js文件的地方改写为:
<!--#Include File="yourjsfile.inc"-->
当然,你的inc文件中不能忘记写上标签:
<script language=javascript></script>
或者这样
<script language="javascript">
<!--#Include File="yourjsfile.js"-->
</script>
2、如果外连js文件中有中文,必须在web.config中加入如下设置:
<system.web>
<globalization responseEncoding="gb2312" requestEncoding="gb2312" fileEncoding="gb2312"/>
<system.web>
第二种方法我觉得是最简单的方法,第一种方法要是js中有中文的话,也必须设置,因此用第二种方法可谓是两者具到