我知道这是一个愚蠢的问题,但我无法获得所需的结果。我想在bck
中分配一个javascript变量document.getElementById(bck)
。一切正常,即警告显示正确的值变量bck,但当我在document.getElementbyID
内使用它时,我收到以下错误:
document.getElementById(bck) is null
我用Google搜索并查看了相关主题,但没有任何帮助。
backdropcontent[m][1]
的值为Reden,selectedbg
的值为Reden。
<script>
for ( var m=0;m<backdropcontent.length;m++) {
if(selectedbg==backdropcontent[m][1]){
var bck=backdropcontent[m][1]+'div1';
alert(bck);
document.getElementById(bck).style.display = "block";
document.getElementById(bck).style.top = "0px";
}
}
</script>
html部分:
<div class="mcdropdown" id="Redendiv1" style="display:none;position:relative">
<a style="cursor: default !important">
<input type="text" name="reden1" id="reden1" style="background-image: url('<?php echo $mosConfig_live_site; ?>/templates/performitor/images/123.png');background-repeat: no-repeat;height:14px;width:130px !important;color:#BDBDBD;border: 1px solid #8e9daa;" disabled="disabled" value="Totaal" autocomplete="off"/>
</a>
</div>
请注意,我不想改变我的代码结构,所以请不要提出任何重大改变。
任何帮助都将不胜感激。谢谢。
答案 0 :(得分:0)
id backdropcontent [m] [1] +'div1'的元素不存在
答案 1 :(得分:0)
它主要是因为您的元素在页面上不存在而引发错误。将<script>
块移到代码下方或使用window.onload event
。
window.onload = function(){
//your code
}
或者使用jquery:
$(document).ready(function() {
// your code
});
答案 2 :(得分:-3)
您使用以下模式中的代码
<script>
for ( var m=0;m<backdropcontent.length;m++) {
if(selectedbg==backdropcontent[m][1]){
var bck=backdropcontent[m][1]+'div1';
alert(bck);
document.getElementById("bck");.style.display = "block";
document.getElementById(bck).style.top = "0px";
}
}
</script>
可能是这段代码可以帮助你。