化繁为简, 捡出其中最精要的部分, 比如说:
<input onchange="func1()" onclick="func2()">
通过这样最简单的代码测试你的代码的正确性及严谨性.

解决方案 »

  1.   

    好,等一下。对了,可以给我你的msn吗?
      

  2.   

    <BODY leftMargin=20 topMargin=30 bgcolor="#CBDCED" onresize='self.focus();'>
    <Form  name="frmQuery" method="post" action="mansetenergyadd.jsp">

      
        <TABLE  width="250px" border="0"  align="left"  cellspacing="0" leftMargin="0"  bordercolor="#000000" style="order-collapse: collapse"><tr>
        <td rowspan=5>&nbsp; 
      <TR> 
          <td width="300px"> 
            
          <table width="100%" border="1">
            <tr> 
                <td width="35%">查询日期:</td>
                <td width="65%"> 
                  <input type="text" name="FormDa" id="FormDa" value=<%= strFroDate0%>>
                </td>
              </tr>
              <tr> 
                <td width="35%">变电站名称:</td>
                <td width="65%"> 
              <select class="tx2" name="SubIDa" id="SubIDa" onchange="javascript:SelectChange0();">
            </select>
                </td>
              </tr>
              <tr> 
                <td width="35%">电压等级:</td>
                <td width="65%"> 
                  <select class="tx2" name="VolLa" id="VolLa" onchange="SelectChange0()">
                    <Option value=220000 <%if((Voll0!=null)&&(Voll0.equals("220000"))) out.print("selected"); %>> 
                    220kV</Option>
                    <Option value=110000 <%if((Voll0!=null)&&(Voll0.equals("110000"))) out.print("selected"); %>> 
                    110kV</Option>
                    <!-- <Option value=66000  <%if((Voll0!=null)&&(Integer.parseInt(Voll0)==66000)) out.print("selected"); %>>  66kV</Option>-->
                    <Option value=35000  <%if((Voll0!=null)&&(Integer.parseInt(Voll0)==35000)) out.print("selected"); %>> 
                    35kV</Option>
                    <Option value=10000  <%if((Voll0!=null)&&(Integer.parseInt(Voll0)==10000)) out.print("selected"); %>> 
                    10kV</Option>
                    <Option value=0      <%if((Voll0==null)||(Voll0.equals(""))||(Integer.parseInt(Voll0)==0))     out.print("selected"); %>> 
                    全部电压等级</Option>
                  </select>
                </td>
              </tr>
              <tr> 
    ..............
    <script language="JavaScript" type="text/javascript">var gobj=document.all;
    function SelectChange0()
    {   alert("dfdsf");
    var url;
    url="new.jsp?SubID0="+frmQuery.SubIDa.value+"&VolL0="+frmQuery.VolLa.value+"&FromD0="+frmQuery.FromDa.value+"&Inter0="+frmQuery.Intera.value+"&Unit0="+frmQuery.Unita.value;
    window.navigate(url);
    }
    function btnsubmit()
    {
    //alert("adf");
    var listlen=document.all.adddate.options.length;
    var czid1=window.opener.document.all.SubstationName.value;
    var mpid1=window.opener.document.all.MPName.value;
    var unit1=window.opener.document.all.Unit.value;
    var frmdate1=window.opener.document.all.fromdate.value;
    var Inter1=window.opener.document.all.Interval.value;
    var ptype1=window.opener.document.all.PType.value;
    /*if(mpid=="")
    alert(czid+" "+mpid+" "+unit+" "+frmdate+" "+Inter0+" "+ptype);
    else
    alert("dd");
    */
    var tt,compvalue.first;
    //alert(listlen);
    first=frmdate1+":"+czid1+":"+mpid1+":"+ptype1+":"+unit1+":"+Inter1;
    compvalue=first;
    for(var i=0;i<listlen;i++)
    {
    tt=(gobj.adddate.options[i].text)
    compvalue=compvalue+";"+tt;
    }
    <%if(Type!=null&&Type.equals("DStation")){%>
    frmQuery.action="xy_Echart.jsp?Compvalue="+compvalue+"&Type=DStation";
    <%}else{%>
    frmQuery.action="xy_Echart.jsp?Compflag=1&Compvalue="+compvalue;
    <%}%>
    window.opener.document.all.sessiondate.value=compvalue;
    frmQuery.submit();
    window.close();
    }
    function btnaddct()
    { var listlen=document.all.adddate.options.length;
    var ctopt = new Option();
    ctopt.value=listlen;
    ctopt.text = gobj.FormD0.value+":"+gobj.SubIDa.value+":"+gobj.MPName.value+":"+gobj.PTypea.value+":"+gobj.Unita.value+":"+gobj.Intera.value;
        document.all.adddate.options[listlen]=ctopt;
    }
    function btnmove()
    {
    var listobj=document.all.adddate;
    /*if(listobj.options.length<2)
    { alert("只有一个数据不能删除!");
    }
    else{
    */
    for(var i=0;i<listobj.options.length;i++)
    {
    if(listobj.options[i].selected)
    {
    listobj.options[i].value="";
    }
    }
    BumpUp(listobj);
    //}}
    function BumpUp(box)  {
    var listlen=box.options.length;
    for(var i=0;i<listlen;i++){
    if(box.options[i].value==""){
    for(var j=i;j<listlen-1;j++){
    // alert("ff1");
    box.options[j].value=box.options[j+1].value;
    box.options[j].text=box.options[j+1].text;
    }
    var ln = i;
    break;
    }
    }
    if(ln < box.options.length)  {
    box.options.length -= 1;
    BumpUp(box);
       }
    }
    </script>
    </HTML>
      

  3.   

    我只贴出了脚本的代码
    jsp的省略了
      

  4.   

    我看毛病出在你自己写代码不规范上, 比如说:
    var tt,compvalue.first;
    这样一句代码定义写错了, 而导致整个JS代码不能用, 从而导致了你写的事件不触发.以后调试JS代码的时候, 那个错误提示框默认还是让它每次都弹出来吧.
      

  5.   

    首先你的JS代码写的不正确的话, 在网页的左下角状态栏里会有一个黄色感叹号图标的, 双击它就会弹出网页脚本错误提示框了, 里面有一个选项: 上面的代码你改一下:
    var tt,compvalue.first;
    ==>
    var tt,compvalue,first;
      

  6.   

    太感谢了
    这样方便多了
    以前都是一行一行的查
    也不知道那里有错误
    可不可以告诉我你的msn?
    有问题可以向你请教
    或者邮箱也行,我不会随便打扰你的
      

  7.   

    我的msn是[email protected]
    邮箱是[email protected]