此代码在左侧显示数组中的所有数字,在中间显示奇数,在右侧显示偶数,但div中心不接受这些值。检查并调试了大约半小时,什么也没有。用于输入左右数据的代码是相同的,但用于中心的代码则不起作用。通过控制台中心检查时,存储的值就像左右存储的一样,但是无法将存储的值插入div。任何帮助将不胜感激。
<style>
#left{
width : 30%;
float: left;
}
#right{
width: 30%;
float: left;
}
#center{
width: 30%;
float: left;
}
</style>
</head>
<body>
<div id = "left"></div>
<div id = "right"></div>
<div id = "center"></div>
<script>
var mya = new Array(50);
var l = document.getElementById("left");
var r = document.getElementById("right");
var c = document.getElementById("center");
var left = '';
var right = '';
var center = '';
for(var c = 0;c<mya.length;c++){
mya[c] = parseInt(Math.random() * 100);
left+="<li>" + mya[c] +"</li>";
if (mya[c]%2){right+="<li>" + mya[c] +"</li>";}
else{center+="<li>" + mya[c] +"</li>";}
}
l.innerHTML+="<ul>" + left + "</ul>";
r.innerHTML+="<ul>" + right + "</ul>";
c.innerHTML+="<ul>" + center + "</ul>";
</script>
</body>
最佳答案
(除了我在上面的注释中提到的错别字),您正在循环中覆盖c
,这是导致问题的原因。更改:
var c = document.getElementById("center");
// and
c.inerHTML
至
var ctr = document.getElementById("center");
// and
ctr.innerHTML
jsFiddle example