JavaScript在IE6下报错'expected identifier, string or number'
最近一段时间在项目开发里用了许多jQuery的插件,有机会一定在本日志里写一些心得。今天不准备介绍jQuery插件,而是要介绍我在使用jQuery表单插件时碰到的一个问题。jQuery表单插件应该算是家喻户晓的jQury插件,我过去一直没有用它,因为jQuery插件一般体积都挺大的,如果只是需要一些简单的功能,我一般都是自己写。比如jQuery表单的处理,我在日志里介绍过,一般情况下懂的这些基本概念,就可以完成大部分任务了。但是这次的情况比较特别,自己写比较麻烦,而且一定不如jQuery表单插件有效率。
我把下列代码加入我的HTML模板文件:
<script type="text/javascript">$(document).ready(function() {var options = {target: '.content',//beforeSubmit: showRequest, // pre-submit callback//success: showResponse // post-submit callback};// bind to the form's submit event$('#bill_addr_form').submit(function() {$(this).ajaxSubmit(options);return false;});});</script>
我把选项(options)里的beforeSubmit 和success注释掉,代码在Forefox和IE8下工作正常,但是在IE6下报错:
expected identifier, string or number
上网搜了一下,发现这只是一个很低级的错误。如果变量options有多个选项,那么我们可以用逗号分开;但是最后一个选项后不可以有逗号。虽然IE8和Firefox可以忽略这个逗号,但是IE6下会报错(据说IE7下也会报错)
解决方法很简单,把多余的逗号删除就可以了。
var options = {target: '.content' //注意不可以加逗号};
标签: Javascript, Jquery



1 条评论:
哈哈,这个问题我也遇到过。有时为了测试而注释程序的时候,要格外仔细和小心。有时测试了半天,逻辑是对的,但一个低级错误往往会把你本来清楚的逻辑再次搞乱。
作者
itpretty, 时间
2010年3月25日上午6:10
发表评论
指向此帖子的链接:
创建链接