日期:2014-05-16  浏览次数:20349 次

被打败了,问个innerHTML的问题
for(j=1;j <=window.form1.upcount.value;j++)
      {
        strBrand111= '品牌指定 '+j+ ': <select   name= "Brand '+j+ ' " '+ '> '+strBrand11+
' </select> <br> ';
window.car_stage.innerHTML=strBrand111;
      }
最后一句,window.car_stage.innerHTML=strBrand111;,当循环输出时,后面的是会覆盖前面已输出的。也就是说比如window.form1.upcount.value为4,那么原意是想输出4个select项,但是覆盖后,就只出现最后一个select了。
但是这么做
  for(i=1;i <=window.form1.upcount.value;i++)
         
          str+= '品牌指定 '+i+ ': <select   name= "Brand '+i+ ' " '+ '> '+ ' <%   while   not   rsBrand.eof   or   err   %> <option> <%=rsBrand( "BrandName ")%> </option> '+
    ' <%   rsBrand.movenext  
    wend   %> </select> <br> ';
 
    window.upid.innerHTML=str;
    }
却可以输出window.form1.upcount.value个数的select项,怪了,没发现有什么区别。
如果现在必须要按照第一种写法来实现select项输出,我如何能让它按照window.form1.upcount.value的个数实现select项输出?


------解决方案--------------------
innerHTML使用的时候是会被解析的,不符合规范,所以不能那么做
非要象一种那样,就只有new Option了