<div class="yui-gd">
            <div class="yui-u first"><label for="${args.htmlid}-addContent">${msg("label.HowToAddContent")}:</label></div>
            <div class="yui-u"> 
              <select id="addContent" name="addContent" onchange="dropdown(this)">
                  <option value="1" selected="selected">${msg("label.generateFromDescription")}</option>
                  <option value="2">${msg("label.uploadFile")}</option>
               </select>   
              </div>   

         </div>
<script type="text/javascript">//<![CDATA[
       function dropdown(sel){
              //if(document.getElementById("addContent").value == "1")
            if(sel.value == "0"){
               document.getElementById('desc').style.display = 'block'
         }
            else {
            document.getElementById('desc').style.display = 'none'
         }
      }       
//]]></script>

我写的,因为我想事件处理程序添加到选择框,它工作得很好,在Firefox,但在IE它总是抛出空例外。 甚至通过我用的attachEvent,它仍然无法在IE浏览器。 如果我使用上面的document.getElementById(“addContent”),它总是会抛出异常空! 但是,所有这些东西在Firefox正常工作!

有人能告诉我为什么吗? 由于事先!

有帮助吗?

解决方案

哪个IE您使用的版本? 如果它是一个旧版本,尝试通过选项来获得所选择的值:

var selectedValue = sel.options[sel.selectedIndex].value;
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top