IE8 消息: 未结束的字符串常量

错误信息:

网页错误详细信息:

网页错误详细信息

用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2)
时间戳: Tue, 16 Apr 2013 10:11:20 UTC


消息: 未结束的字符串常量
行: 37
字符: 26
代码: 0
URI: http://localhost:7001/survey/rms/task/loadTask.do


解决办法:

未结束的字符串常量 网页错误 

未结束的字符串常量网页错误大致分为以下三种情况:

(1)javascript和jsp文件的编码类型不一致

现象:比如你的JSP网页用的编码格式是UTF-8,但是你的JS文件用的编码是GB2312,这样文件内部特殊字符因格式不一致就会在解码时出现乱码,从而导致编译器在未到达引号前提前结束,产生“未结束的字符串常量”这种不太容易发现的错误。

解决:如果你的JS是外部引用进来的,而不是在JSP页面上编写的,可以在<script type="text/javascript" src="XXX.js" charset="###">中设置charset="###"与你的JSP页面编码一致就可以了。如果你的JS是在JSP页面上直接编码的,基本排除这种类型的错误。

(2)在javascript中,字符串前后标记不匹配或者嵌套错误

现象:这种最常见也最容易发现错误,字符串中单引号或者双引号前后不匹配,或者在document.write()时,没有正确输出单引号或者双引号,还有就是在单双引号嵌套时出现错误。

解决:让前后引号正确配对。共有两层嵌套时,双引号内嵌套单引号;单引号内嵌套双引号都是正确的。共有三层嵌套时,最里面一层引号和最外面一层相同,这样是错误的,可以在最里面一层引号前加上转义字符"\"。

(3)传递的参数变量内或者JSP脚本变量中包含HTML标记语言,包含换行符或包含引号

现象:这种情况是最难发现的,容易忽略了变量内部文字原因产生的,将字符串以参数形式传递给一个函数或者HREF、action时,该字符串里包含换行符、引号或者HTML标记,造成了此错误。

解决:对于这种情况,解决方法有两个:一个是将字符串变量进行替换操作,将双引号替换成单引号,单引号换成“\"”,不过这样在传递后读取时还得替换成原文;另外一个方法是不直接将数据以参数形式传递,而是先将其赋值给一个隐藏文本内,函数里只需读取文本中的内容即可。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值