最近,网站在改版,当时是使用IE7进行测试的,没有发现问题。后来使用IE6浏览的时候,发现出现了如下的错误:
Line:20
Char:5
Code:0
Error:'return' 语句在函数之外
我怀疑是js冲突,可是找了半天也没有找出毛病来。
最后,没有办法只好盼盼一番了,最终结果如下:
答案1:
问题描述:出现:return 语句在函数之外 js错误
回答:
今天写翻页JS脚本,一直用的都是<input type="image" />控件,
在控件的onclick事件中加入onclick="javascript:return btnNext()" 语句,一直用的都很顺手,
结果今天换了用<a href="javascript:return btnNext()">下一页</a>结果出问题了,提示说:return 语句在函数之外。
很郁闷的查了好多资料,大部分告诉说是js编码问题。可是我的js编码没问题啊。
郁闷中将它改为<a href="javascript:return false">,结果还是有错误,汉!!
实在没法子了,干脆把 return给去掉了,结果OK了,呵呵。
后来想了想可能是input 控件放在Form里会引起submit事件,它有接收return的地方,
而<a></a>不会引起submit事件,没有接收这个return的地方,所以不能有返回参数。
我相信遇到以上情况的朋友很多,包括我在内。我也是在网上找的这么几个解决的方法,希望能帮助更多的朋友!
回答2:
问题描述:"return"语句在函数之外
问题:
在项目开发时偶尔遇到一个js的问题,提示"return"语句在函数之外,在IE7下是没有问题的,不会报错,但在IE6下就会有错误提示,在网上
搜索一番后确认是js文件编码的问题,js文件保存默认编码为ANSI,与asp.net保存编码不一样,此时只需要把js以UTF-8的形式保存即可。
解决方法:
在.NET中将你要引用的JS文件打开,然后选择菜单“文件-高级保存选项”,选择“UTF-8 无签名”,保存。
经过了上述的探讨,忽然想到网站是在国外的,用的是gd的空间啊,那肯定就是js编码的问题了,至此豁然开朗了!
后来将相关的css文件和js文件下载下来,改变编码传到网站上后,错误消失。
意外收获:
本来在firefox浏览器中不执行css文件(就是忽略css文件)的,经过把css编码改变后上传到服务器上,发现在火狐浏览器中能完美显示页面了……
至此,大功告成!
=====================================
功夫不负有心人