IE6下出现JavaScript未结束的字符串常量错误的解决方法_javascript技巧

里面提到“DOM是UTF-8的篇码,如果JS库不是分离的独立JS文件,而是包含在DOM里的,这个问题是不会出现的。然而分离的JS文件并不是UTF-8编码,被加库到UTF-8编码的DOM里,中文就出现了乱码,并影响到引号符,使浏览器无法判断字符串结束。解决变法很简单,JS文件另存为UTF-8编码格式即可。 ”
所以我修改了JavaScript的引用, <script type="text/javascript" src="**.js" charset="gb2312"></script>
修改后果然,可以正常且正确的运行了。 看来真的是中文编码格式的问题了。
问题:虽然用gb2312可以解决问题。 但UTF-8却不可以。需要进一步研究。

项目在IE6下表现得不理想,害我一头汗。若不是某人用IE7,恐怕我就算天大的啤气也发不起来。是忽悠过去了,但问题还得解决。要知道IE6还是主要浏览器。回来后我在远程服务器上用IE6仔细检查出错的JS库,其提示是“未结束的字符串常量”。心里纳闷我不至于漏加个引号吧,就算我忘了给字符串加引号结束,在IE7和FireFox下同样也会出错。为什么又好得不得了呢。找到出错的那一行后真相大白……

我需要一个事件来处理用户点击按钮,把项目预警信息设为“已读”,以使预警信息框不再弹出。Jquery会调用处理脚本并返回处理信息。若处理信息为true,表示设置成功。JS代码会在DOM里指定信息元素修改HTML,也就是将“未读”设为“已读”。

复制代码 代码如下:

function setread(id){
$.post(”result/setRead.asp”,{id:id},function(msg){
if(msg==true){
$(”#msgList_”+id).html(”已读“);//出错行。
}
});
}

问题就出在这个“已读”上。中文的,郁闷了很久。DOM是UTF-8的篇码,如果JS库不是分离的独立JS文件,而是包含在DOM里的,这个问题是不会出现的。然而分离的JS文件并不是UTF-8编码,被加库到UTF-8编码的DOM里,中文就出现了乱码,并影响到引号符,使浏览器无法判断字符串结束。解决变法很简单,JS文件另存为UTF-8编码格式即可。

这点小问题差点让我在众目睽睽下出大糗。

时间: 2024-08-03 10:36:28

IE6下出现JavaScript未结束的字符串常量错误的解决方法_javascript技巧的相关文章

Javascript iframe交互并兼容各种浏览器的解决方法_javascript技巧

在Web前端开发中,我们经常会用到iframe这个控件. 但是这个控在内.外交互时,往往各个浏览器所用的关键字不同,很是麻烦,为了能够得到子iframe中的window对象,各家浏览器有着各家的指定,有的是window,有的是contentWindow等等也许还有我们不知道的. 但是从子页面访问父层页面,其本上大家都是window.parent就可以了. 那么通过这个特征,我们可以在子页面中,把自身的window对象传递给父页面就可以了,这样父页面就很轻松的访问子页面,再也不用靠虑如何从ifra

JavaScript 未结束的字符串常量常见解决方法_javascript技巧

1.JAVASCRIPT引用时,使用的字符语言不一致. 比如:<script type="text/javascript" src="xxx.js" charset="UTF-8″>. xxx.js文件内部使用的是GB2312的格式,外面调用使用的是UTF-8,所以文件内部部分特殊字符因为格式不一致,出现乱码,造成此原因. 改为charset="GBK"就可以了 2.JAVASCRIPT输出HTML字符时,前后标记不匹配.

js 未结束的字符串常量错误解决方法_javascript技巧

1.JAVASCRIPT引用时,使用的字符语言不一致. 比如:<script type="text/javascript" src="xxx.js" charset="UTF-8″>.xxx.js文件内部使用的是GB2312的格式,外面调用使用的是UTF-8,所以文件内部部分特殊字符因为格式不一致,出现乱码,造成此原因. 2.JAVASCRIPT输出HTML字符时,前后标记不匹配. 这种比较常见,往往在输出字符串时,出现单引号(')或双引号(&

IE8的JavaScript点击事件(onclick)不兼容的解决方法_javascript技巧

博客园闪存分页是用JavaScript生成的,今天发现在IE8下点击页码不能翻页,翻页操作是在当前页码的onclick事件中进行的. 开始代码是这么写的: 复制代码 代码如下: var a = document.createElement("a");a.setAttribute("onclick", this.ClickFunctionName + "(" + pageIndex + ");Pager.SetCurrent("

JavaScript使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法_javascript技巧

javascript做带小数的计算时,会出现9的循环,以下方法帮助解决. 第一个参数是需要处理的数值,第二个参数是需要保留的小数位数.自家项目里面就这么用了~ 复制代码 代码如下: function round(v,e){ var t=1; for(;e>0;t*=10,e--); for(;e<0;t/=10,e++); return Math.round(v*t)/t; }

IE 下Enter提交表单存在重复提交问题的解决方法_javascript技巧

在submit()后加个return false就可以了.如: 复制代码 代码如下: document.formname.submit(); return false; 以后要注意了 后面尝试了另一种方法: 复制代码 代码如下: if ($("#formid").validationEngine("validate")){ document.getElementById("formid").submit(); } 也是可以的

js的.innerHTML = &amp;quot;&amp;quot;IE9下显示有错误的解决方法_javascript技巧

问题: 在用js动态创建html页面时: 复制代码 代码如下: var tab = document.createElement("table"); tab.innerHTML += "<td>订货单号</td>"+ "<td>单据日期</td>"+ "<td>商品类型</td>"+ "<td>订单属性</td>"

JavaScript报未结束的字符串常量,找了好久还是没找到问题所在!求教各位高手

问题描述 JavaScript报未结束的字符串常量,找了好久还是没找到问题所在!求教各位高手 问题补充:非常感谢各位不吝赐教,结果是传入的字符串中有个',比如是这样的'啦啦啦啦啦啦哈'哈'哈'结果就先结束掉了,解决的方法就是用encodeURIComponent(title)进行转义一下 解决方案 有没有可能是字符串中包含回车换行之类的字符,检查下出问题地方相关的字符串值试试解决方案二:这种基本是上因为包含回车多数可能是从后台传个字符串,但这个字符串中包含回车导致解决方案三:http://wen

请教:为什么会提示有未结束的字符串常量和GRulerControl未定义呢

问题描述 为什么会提示有未结束的字符串常量和GRulerControl未定义呢<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"xmlns:v="urn:schemas-microsof