2017-04-14 85 views
0

我有一个hdden div机智选择它里面。我想在div显示时设置必要的属性。如何在隐藏div显示时设置必需的属性?

function showHide(elem) { 
    if (elem.selectedIndex !== -1) { 
    //get the divs to show/hide 
    divsO = document.getElementById("frmRegister").getElementsByTagName('div'); 
    //hide the divs 
    for (var i = 0; i < divsO.length; i++) { 
     divsO[i].style.display = 'none'; 
    } 
    //unhide the selected div 
    var elems = document.getElementsByClassName('div' + elem.value); 
    for (i = 0; i < elems.length; i++) { 
     elems[i].style.display = 'block'; 
     document.getElementsByClassName(elems[i]).getElementsByTagName('select')[0].required = true; 
    } 
    prices(); 
    } 
} 

回答

1

getElementsByClassName(elems[i])没有意义。 elems[i]已经是一个元素,而不是用作类名参数的字符串。

你需要的仅仅是elems[i]代替,所以该行应该是

elems[i].getElementsByTagName('select')[0].required = true;