从段落中的选择中获取选定的值

时间:2014-08-20 18:08:59

标签: javascript dom

我在段落中有一个选择,想要知道所选的值是什么,但我得到null ...有什么帮助吗?这是代码:

divWithInfo = document.createElement('div');
divWithInfo.class = 'divWithInfoControls';
divWithInfo.style.position = 'absolute';
divWithInfo.style.top = '10px';
divWithInfo.style.width = '100%';
divWithInfo.style.textAlign = 'center';
var groupToDisplay = '<p id="pSelectGroup" style="display: block;">Select the user group: ';
groupToDisplay += '<select id="selectGroup" onchange="applyGroupSelection()">';
groupToDisplay += '<option selected>Nothing selected</option>';
for ( var g in userGroups ) 
groupToDisplay += '<option>' + g + '</option>';
groupToDisplay += '</select></p>';
divWithInfo.innerHTML += groupToDisplay;
console.log ( document.getElementById( "selectGroup" ) );

当我在onchange上应用函数时,&#34; document.getElementById&#34;工作得很好,只有在这种情况下,我得到了空白

1 个答案:

答案 0 :(得分:2)

您似乎未将divWithInfo添加到 #document ,因此getElementById无法在 DOM树<<}中找到它/ em>的

在致电document.getElementById("selectGroup")之前,请记住,例如document.body.appendChild(divWithInfo)

如果这不是一个选项,您可能需要考虑使用divWithInfo.querySelector,即

var foo = divWithInfo.querySelector("#selectGroup");

但是,我尝试避免这种情况,相反,如果在追加之前需要引用,我会完全使用 DOM 方法创建,不使用.innerHTML < /强>