兼容ie和firefox版本的js反选 全选 多选框

  朋友们说不兼容。昨天晚上回去调试了一个兼容版本:

  

复制代码 代码如下:

  <html>

  <head>

  <meta http-equiv="Content-Type" content="text/html; charset=gbk">

  <script language="javascript">

  function selectIt(action){

  var testform=document.getElementById("bdkey");

  for(var i=0 ;i<testform.elements.length;i++){

  if(testform.elements[i].type=="checkbox"){

  e=testform.elements[i];

  e.checked=(action=="selectAll")?1:(!e.checked);

  }

  }

  }

  </script>

  </head>

  <body>

  <form name="bdkey" id="bdkey">

  <p class="STYLE1">

  全 选

  <input type="checkbox" name="selectAll" value="checkbox" onClick="selectIt('selectAll')"><br>

  反 选

  <input type="checkbox" name="invest" value="checkbox" onClick="selectIt()"><br>

  Item1

  <input type="checkbox" name="checkbox" value="checkbox">

  <br>

  Item2

  <input type="checkbox" name="checkbox" value="checkbox"><br>

  Item3

  <input type="checkbox" name="checkbox" value="checkbox"><br>

  Item4

  <input type="checkbox" name="checkbox" value="checkbox"><br>

  Item5

  <input type="checkbox" name="checkbox" value="checkbox">

  </p>

  </form>

  </body>

  

   [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  这次兼容测试我刚开始是采用一个经典的js多选框 全选 反选 实现及分析 的实现方式,也就是通过ev.srcElement 但是没调试成功。于是有了现在的方法。兼容性的调试有一部分是依赖于你的实现的方式的,像我这种方式很傻瓜  哈哈但是最简单往往是最有效的。当然,作为技术的追求这来说,我们大家都喜欢用很多高深的方法。这里我是不会