ie6下表单无法提交

昨天碰到一个蛋疼的问题,表单在ie6下面无法提交,在其他浏览器上完全没问题,以之前的经验肯定是js这块有问题,可是我在ie下装了debug插件,js异常都会弹出对话框的,这个也没有弹出。我有猜测难道是spring-security框架与ie6的兼容问题?(我的系统权限这块用spring-security控制的)网上问了下,也有人说在ie6使用该框架碰到过类似的问题(IE6下,security不执行default_target_url),让我重写下AuthenticationProcessingFilter,在每次请求后加上一个随机参数,这样使internet识别这是不同的请求,结果还是不行。我纠结了半天,最后还是找到了。

 

原来是在页面中的提交部分使用了诸如<a href="void(0) " onclick="javascript:xxx;">xxxx</a>的元素。

 

在ie6下使用 void 操作符指定超级链接。表达式会被计算但是不会在当前文档处装入任何内容。面的代码创建了一个超级链接,当用户点击以后不会发生任何事。当用户点击链接时,void(0) 计算为 0,但在 JavaScript 上没有任何效果。

 

具体修改方案为

  1. 空链接推荐用"###",可以将href属性值设为“###”或“#”
  2. 在onclick属性值后面加上return false;来阻止浏览器的默认行为

你可能感兴趣的:(JavaScript)