javascript 在 IE中出现 ERROR 尚未实现 错误

额,在FF中时正常的,但是,在 IE8.0 中 通过 try catch (e) alert(e) 却得到了此错误。

代码如下



$("#XTABLE").find("tr").not(":first").each(function(){
  
  
  self=$(this);
  if(self.data("gt")==1)
 {
 self2=self.find("td:eq(0)");
 transstring=self2.text()+";"+getSelectValue_1(self.find("select"),1)+";"+self.find(":input:eq(1)").val()+";"+self.find(":input:eq(2)").val()+";"+self.find(":input:eq(3)").val();
 postData+=transstring+"$";
 }
});

红色区域为错误 发生区,

 其实现在还是不明白 为什么  会错误。、

 开始 我想定义一个self变量,到是一想到其实自己有self的全局变量,所以,直接使用就好了,于是 就直接使用,而没有在此作用于之上重新定义self。

结果 错就错在没有定义 self上,问题的原因可能是 self 没有检测到,javascript 可以预先不定义 变量,相当于一个全局变量。

2 可能在前面或是其他页面这个 self被某些影响...

于是

var postData="";var self2,transstring,self;
重新定义就oK.

结果教育:在javascript中尽量少使用全局变量。毕竟不是静态语言,要先编译,所以 javascript 的运行速度不能和编译型语言比较。

再就是自己的 javascript 代码的规范上,必须规范,包括变量命名和使用,防止交叉变量。

2012年3月29日18:37:36

 

转载于:https://my.oschina.net/u/159875/blog/51834

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值