<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title> new document </title>
    <meta name="generator" content="editplus" />
    <meta name="author" content="Gao YiXiang" />
    <meta name="email" content="[email protected]" />
    <meta name="keywords" content="javascript dhtml dom" />
    <meta name="description" content="I love web development." />
</head>
<body>
    <img id="imgShow1" src="images/1.gif">
    <form>
    <select id="sltOpt1" name="offerState">
           <option value="1" size="6" style="color:#FF9C00;"> 水晶 </option>
           <option value="2" size="6" style="color:#FF9C00;"> 金属 </option>
           <option value="3" size="6" style="color:#FF9C00;"> 粮食 </option>
           <option value="4" size="6" style="color:#FF9C00;"> 银币 </option>
         </select>
    </form>
    <img id="imgShow2" src="images/1.gif">
    <form>
    <select id="sltOpt2" name="offerState">
           <option value="1" size="6" style="color:#FF9C00;"> 水晶 </option>
           <option value="2" size="6" style="color:#FF9C00;"> 金属 </option>
           <option value="3" size="6" style="color:#FF9C00;"> 粮食 </option>
           <option value="4" size="6" style="color:#FF9C00;"> 银币 </option>
         </select>
    </form></body>
<script type="text/javascript">
<!--
function w()
{
var i;
for(i=1;;i++)
{var oImg = document.getElementById("imgShow"+i);
oImg.onerror = function()
{
    this.alt = this.src;
};var oSlt = document.getElementById("sltOpt"+i);
oSlt.onchange = function()
{
    oImg.src = "images" +"/"+ this.value + ".gif";
};}else{break;}
}
//-->
</script>
</html>
因为在页面上的多个地方要用到同样的一个效果,为了简化一下代码,我想在用控件名称+i的形式来表示变量,可是发现页面的js运行不正常,不知道那里错了,大家帮我看看

解决方案 »

  1.   

    lz
    ======================else{break;} 你的if在哪里?
      

  2.   

     没有if其他的条件了把else去掉,写错了,那那里错了呢
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
         <title>  new document  </title> 
         <meta name="generator" content="editplus" /> 
         <meta name="author" content="Gao YiXiang" /> 
         <meta name="email" content="[email protected]" /> 
         <meta name="keywords" content="javascript dhtml dom" /> 
         <meta name="description" content="I love web development." /> 
    </head> 
    <body> 
         <img id="imgShow1" src="images/1.gif"> 
         <form> 
         <select id="sltOpt1" name="offerState"> 
                <option value="1" size="6" style="color:#FF9C00;">  水晶  </option> 
                <option value="2" size="6" style="color:#FF9C00;">  金属  </option> 
                <option value="3" size="6" style="color:#FF9C00;">  粮食  </option> 
                <option value="4" size="6" style="color:#FF9C00;">  银币  </option> 
              </select> 
         </form> 
         <img id="imgShow2" src="images/1.gif"> 
         <form> 
         <select id="sltOpt2" name="offerState"> 
                <option value="1" size="6" style="color:#FF9C00;">  水晶  </option> 
                <option value="2" size="6" style="color:#FF9C00;">  金属  </option> 
                <option value="3" size="6" style="color:#FF9C00;">  粮食  </option> 
                <option value="4" size="6" style="color:#FF9C00;">  银币  </option> 
              </select> 
         </form> </body> 
    <script type="text/javascript"> 
    <!-- 
    function w() 

    var i; 
    for(i=1;;i++) 
    {var oImg = document.getElementById("imgShow"+i); 
    oImg.onerror = function() 

        this.alt = this.src; 
    }; var oSlt = document.getElementById("sltOpt"+i); 
    oSlt.onchange = function() 

        oImg.src = "images" +"/"+ this.value + ".gif"; 
    };}

    //--> 
    </script> 
    </html> 
    因为在页面上的多个地方要用到同样的一个效果,为了简化一下代码,我想在用控件名称+i的形式来表示变量,可是发现页面的js运行不正常,不知道那里错了,大家帮我看看 
      

  3.   

    我帮你简化了一下js,你看这样行不行?<html xmlns="http://www.w3.org/1999/xhtml">   
    <head>   
          <title>   new document   </title>   
          <meta name="generator" content="editplus" />   
          <meta name="author" content="Gao YiXiang" />   
          <meta name="email" content="[email protected]" />   
          <meta name="keywords" content="javascript dhtml dom" />   
          <meta name="description" content="I love web development." />   
    </head>   
    <body>   
          <img id="imgShow1" src="images/1.gif">   
          <form>   
          <select id="sltOpt1" name="offerState" onchange="imgShow1.src='images//'+this.value+'.jpg'">   
                 <option value="1" size="6" style="color:#FF9C00;">   水晶   </option>   
                 <option value="2" size="6" style="color:#FF9C00;">   金属   </option>   
                 <option value="3" size="6" style="color:#FF9C00;">   粮食   </option>   
                 <option value="4" size="6" style="color:#FF9C00;">   银币   </option>   
               </select>   
          </form>   
          <img id="imgShow2" src="images/1.gif">   
          <form>   
          <select id="sltOpt1" name="offerState" onchange="imgShow2.src='images//'+this.value+'.jpg'">   
                 <option value="1" size="6" style="color:#FF9C00;">   水晶   </option>   
                 <option value="2" size="6" style="color:#FF9C00;">   金属   </option>   
                 <option value="3" size="6" style="color:#FF9C00;">   粮食   </option>   
                 <option value="4" size="6" style="color:#FF9C00;">   银币   </option>   
               </select>   
          </form>   </body>     
    </html>
      

  4.   

    oSlt.onchange = function() 

        oImg.src = "images" +"/"+ this.value + ".gif"; 
    }
    ============
    oSlt.onchange = function() 

        document.getElementById("imgShow"+i).src = "images" +"/"+ this.value + ".gif"; 
    }