js在非IE6下执行正常,到了IE6下就根本不进js文件

解决方案 »

  1.   

    在js的开头alert看看能不能进去,然后再1点点往下移看看能运行到哪儿
      

  2.   

    <script src="../js/getClasses.js" type="text/javascript" charset="utf-8"></script>
     <div id="message"><font color="red" size="2">$!{message}</font></div>                                                                      
                                  <font size="2">请选择年级:</font>
                                  <!--select name="grade" onchange="getClasses(this.selectedIndex)"-->
    <select name="grade" onchange="send_request('http://127.0.0.1:8081/pjxt/studentFront/operation.do?method=getClassesByGrade',this.selectedIndex)">
                                   <option value="-1">---请选择---</option>
                                     <option value="0">${gradesMap.get(0)}</option>
                                     <option value="1">${gradesMap.get(1)}</option>
                                     <option value="2">${gradesMap.get(2)}</option>
                                  </select>
                                  <br/><br/>
                                  <font size="2">请选择班级:</font>
                                  <select id="classes" name="classes">                
                                        <option value="-1">---请选择---</option>
                                  </select>                                               
                              </div>js文件的内容:
    alert("coming!");
    var http_request = false;
    function send_request(url,gradeId) {//初始化、指定处理函数、发送请求的函数
      http_request = false;
      //开始初始化XMLHttpRequest对象
      if(window.XMLHttpRequest) { //Mozilla 浏览器
       http_request = new XMLHttpRequest();
       if (http_request.overrideMimeType) {//设置MiME类别
       http_request.overrideMimeType('text/xml');
          }
         }else if (window.ActiveXObject) { // IE浏览器
        try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
          try {
                  http_request = new ActiveXObject("Microsoft.XMLHTTP");
          } catch (e) {}
        }
      }
    if (!http_request) { // 异常,创建对象实例失败
      window.alert("不能创建XMLHttpRequest对象实例.");
      return false;
    }
    http_request.onreadystatechange = processRequest;
    // 确定发送请求的方式和URL以及是否同步执行下段代码
    var newUrl = url+'&param='+gradeId;
    //alert('newUrl='+newUrl);
    http_request.open("GET", newUrl, true);
    http_request.send(null);
    }
    // 处理返回信息的函数
      function processRequest() {
      if (http_request.readyState == 4) { // 判断对象状态
      if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
         // alert(http_request.responseText);
            eval('var objs = ' + http_request.responseText);
               
       //alert(message);
       var classesList = document.getElementById("classes");
                        
       if(objs.root.length!=0){
       classesList.innerHTML='';
          for(var i = 0; i<objs.root.length;i++){
                                        classesList.add(new Option(objs.root[i].className,objs.root[i].classesId),null); 
          }
       }
      } else { //页面不正常
          alert("您所请求的页面有异常。");
      }
      }
    var   theSelect=document.all.classes; 
    for(var i=theSelect.options.length-1;i>0;i--) {
     theSelect.options.remove(i); 
    }
    document.getElementById("message").innerHTML="";
      }
      

  3.   

    <script src="../js/getClasses.js" type="text/javascript" charset="utf-8"></script>
    这个没有问题 就不应该有问题 就引了这一个js么 清下缓存试试~~~
      

  4.   

    非常谢谢fanchuanzhidu的建议,现在起码进了js了
      

  5.   

    现在是执行到这一句就报错,报的是类型不匹配的错,这个是怎么回事啊?是IE6不支持这样动态添加选项吗?
    classesList.add(new Option(objs.root[i].className,objs.root[i].classesId),null);
      

  6.   

    问题解决了,原来改成classesList.options.add(new Option(objs.root[i].className,objs.root[i].classesId))就兼容了,谢谢大家