سؤال

        <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>

أكتبها لأنني أرغب في إضافة معالج الأحداث في المربع تحديدها، إنه يعمل بشكل جيد في فايرفوكس، ولكن في أي فإنه دائما رمي استثناء فارغ. حتى من خلال أنا استخدمت ملفق، لا يزال بإمكانه العمل في IE. إذا كنت أستخدم Document.getEllementByID ("AddContent") في أعلاه، فسوف يرمي دائما استثناء فارغ! ولكن كل هذه الأشياء تعمل بشكل جيد في فايرفوكس!

هل يمكن لأي شخص أن يقول لي لماذا؟ شكرا لك مقدما !

هل كانت مفيدة؟

المحلول

ما هي الإصدار IE الذي تستخدمه؟ إذا كانت نسخة قديمة، فحاول الحصول على القيمة المحددة من خلال الخيارات:

var selectedValue = sel.options[sel.selectedIndex].value;
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top